Предыдущая версия справа и слева
Предыдущая версия
Следующая версия
|
Предыдущая версия
|
hosting:cms:joomla:own-404 [2019/10/04 15:55] zinenko |
hosting:cms:joomla:own-404 [2020/04/25 15:12] (текущий) zinenko |
====== 2.13.2.17. Настройка страницы 404 в Joomla ====== | ====== 2.13.2.17. Настройка страницы 404 в Joomla! ====== |
| |
Настроить страницу 404 можно перенаправив на страницу, которую можно создать: | Настроить страницу 404 можно, перенаправив на страницу, созданную: |
* Как внутреннюю страницу CMS Joomla. | |
* Созданную вручную страницу. | |
| |
| <tabs justified="true" stacked="true" fade="true"> |
| * [[#auto|Автоматически]] |
| * [[#manual|Вручную]] |
| |
| <pane id="auto"> |
===== Создание страницы 404 внутри CMS ===== | ===== Создание страницы 404 внутри CMS ===== |
| |
Для создания страницы внутри CMS нужно: | Чтобы создать страницу внутри CMS, выполните следующее: |
- Перейти в раздел <<** Материалы -> Менеджер материалов -> Создать материал**>>: {{ :hosting:cms:joomla:create-new-page-button.png?nolink |}} | - Откройте раздел «**Материалы → Менеджер материалов → Создать материал**»:{{ :hosting:cms:joomla:create-new-page-button.png?nolink |}} |
- В открывшейся странице укажите данные для создания желаемой страницы 404: {{ :hosting:cms:joomla:create-new-page-form.png?nolink |}} | - Укажите данные для создания желаемой страницы 404:{{ :hosting:cms:joomla:create-new-page-form.png?nolink |}} |
- <<**Заголовок**>> -- укажите произвольный заголовок страницы. | * «**Заголовок**» — укажите произвольный заголовок страницы. |
- <<**Материал**>> -- в блоке редактора укажите текст, который нужно отобразить на странице. | * «**Материал**» — в блоке редактора укажите текст, который нужно отобразить на странице. |
- <<**Состояние**>> -- выберите <<**Опубликовано**>>, в ином случае доступ к странице получить будет невозможно. | * «**Состояние**» — выберите ''Опубликовано''. В ином случае доступ к странице получить будет невозможно. |
- <<**Категория**>> -- выберите нужную категорию, чаще всего лучше выбрать <<**Uncategorised**>>. | * «**Категория**» — выберите нужную категорию. Чаще всего лучше выбрать ''Uncategorised''. |
- <<**Доступ**>> -- укажите <<**Public**>>, чтобы доступ был у всех посетителей сайта, в ином случае они не смогут попасть на страницу 404, а в браузере будет отображена страница с ошибкой бесконечного редиректа. | * «**Доступ**» — выберите ''Public'', чтобы доступ был у всех посетителей сайта. В ином случае они не смогут попасть на страницу 404, а в браузере будет отображена страница с ошибкой бесконечного редиректа. |
- Перейдите во вкладку <<**Отображение**>> и скройте ненужные пункты для данной страницы: {{ :hosting:cms:joomla:displaying-new-page-404-create.png?nolink |}} | - Переключитесь на вкладку «**Отображение**» и скройте ненужные элементы данной страницы: {{ :hosting:cms:joomla:displaying-new-page-404-create.png?nolink |}}Как правило, лучше всего скрыть следующие элементы: |
- Как правило лучше всего скрыть следующие пункты: | * «**Показывать метки**». |
* Показывать метки. | * «**Вводный текст**». |
* Вводный текст. | * «**Заголовок информации о материале**». |
* Заголовок информации о материале. | * «**Категория**». |
* Категория. | * «**Категория, как ссылка**». |
* Категория, как ссылка. | * «**Заголовок родительской категории**». |
* Заголовок родительской категории. | * «**Заголовок родительской категории, как ссылка**». |
* Заголовок родительской категории, как ссылка. | * «**Показать ассоциации**». |
* Показать ассоциации. | * «**Автор**». |
* Автор. | * «**Дата публикации**». |
* Дата публикации. | * «**Навигация**». |
* Навигация. | * «**Показывать иконки**». |
* Показывать иконки. | * «**Иконка печати**». |
* Иконка печати. | * «**Кол-во просмотров**». |
* Кол-во просмотров. | - Сохраните страницу, нажав «**Сохранить**». |
- Сохраните страницу нажав на кнопку <<**Сохранить**>>. | - Как только страница обновится и данные сохранятся, обратите внимание на браузерную строку и запомните номер страницы, указанный после ''&id=X'':{{ :hosting:cms:joomla:create-new-page-found-id.png?nolink |}} |
- Как только страница будет обновлена и произойдет сохранение -- обратите внимание на браузерную строку и запомните номер страницы указанный после ''&id=X'': {{ :hosting:cms:joomla:create-new-page-found-id.png?nolink |}} | - [[#Настройка_направления_на_ошибку_404|Настройте]] переадресацию на эту страницу, указав в качестве ''адреса_созданной_страницы'' строку ''/index.php?option=com_content&view=article&id=X'', где вместо ''X'' укажите сохранённый ранее номер страницы. |
- [[#Настройка_направления_на_ошибку_404|Настройте]] переадресацию на эту страницу указав в качестве ''адреса_созданной_страницы'' строку ''/index.php?option=com_content&view=article&id=X'' где вместо ''X'' укажите ранее найденный номер страницы. | |
| |
===== Создание собственной страницы 404 ===== | </pane> |
| <pane id="manual"> |
| ===== Создание собственной страницы 404 вручную ===== |
| |
Для создания собственной страницы 404, без использования шаблона Joomla нужно создать такую страницу, к примеру в корневом каталоге сайта, с именем например ''404-error.php'' и создайте собственный макет с нужной информацией и визуальным оформлением, или воспользуйтесь сторонними шаблонами, например [[https://yraaa.ru/templates/original-404-ucoz|этими]] или [[https://freefrontend.com/html-css-404-page-templates/|этими]]. | Чтобы создать собственную страницу 404 (без использования шаблона Joomla!), создать такую страницу, к примеру, в корневом каталоге сайта с именем вроде ''404-error.php'', используя собственный макет с нужной информацией и визуальным оформлением или воспользовавшись сторонними шаблонами, например [[https://yraaa.ru/templates/original-404-ucoz|этими]] или [[https://freefrontend.com/html-css-404-page-templates/|этими]]. |
| |
После создания самой страницы [[#Настройка_направления_на_ошибку_404|настройте]] переадресацию на нее указав в качестве ''адреса_созданной_страницы'' имя файла, например с указанным ранее примером ''/404-error.php''. | После создания самой страницы [[#Настройка_направления_на_ошибку_404|настройте]] переадресацию на неё, указав в качестве ''адреса_созданной_страницы'' имя файла, например, с указанным ранее примером ''/404-error.php''. |
| |
===== Настройка направления на ошибку 404 ===== | ==== Настройка направления на ошибку 404 ==== |
| |
По умолчанию ошибка 404 генерируется при помощи файла ''error.php'' в каталоге темы, но в большинстве своем у данных файлов достаточно сложна структура, которая обеспечивает корректную работу конкретно с данной темой. | По умолчанию ошибка 404 генерируется при помощи файла ''error.php'' в каталоге темы, но в большинстве своём у данных файлов достаточно сложная структура, которая обеспечивает корректную работу конкретно с данной темой. |
Для формирования нужной переадресации нужно: | |
- Переименуйте файл ''error.php'' активной темы в другое произвольное название, к примеру ''error.php.bak''. | Чтобы сформировать нужную переадресацию, выполните следующее: |
| - Переименуйте файл ''error.php'' активной темы в другое произвольное название, к примеру ''error.php.bak''. |
- Скопируйте файл ''templates/system/error.php'' в каталог с активной темой. | - Скопируйте файл ''templates/system/error.php'' в каталог с активной темой. |
- Отредактируйте файл указав строки редиректа:<code php>if (($this->error->getCode()) == '404') { | - Отредактируйте файл, указав строки редиректа:<code php> |
header('Location: /адрес_созданной_страницы'); | if (($this->error->getCode()) == '404') { |
| header('Location: /адрес_созданной_страницы'); |
exit; | exit; |
} </code>после строчек <code php>if (!isset($this->error)) | } |
| </code>после строк<code php> |
| if (!isset($this->error)) |
{ | { |
$this->error = JError::raiseWarning(404, JText::_('JERROR_ALERTNOAUTHOR')); | $this->error = JError::raiseWarning(404, JText::_('JERROR_ALERTNOAUTHOR')); |
$this->debug = false; | $this->debug = false; |
} | } |
| |
$app = JFactory::getApplication(); </code> Вместо ''адрес_созданной_страницы'' укажите нужный адрес ранее созданной страницы. | $app = JFactory::getApplication(); |
| </code>Вместо ''/адрес_созданной_страницы'' укажите нужный адрес ранее созданной страницы. |
| |
| Выполнить все указанные действия можно с помощью [[hosting:file-manager|файл-менеджера]] или любого [[hosting:ftp:clients|FTP-клиента]]. |
| </pane> |
| </tabs> |