Статьи, приемы, хитрости и Уроки по Photoshop, Illustrator, Web дизайну и кодингу.

Страница ошибки 404 в Joomla 1.5,2.5,3.0 - в стиле сайта

Наверняка кто-то уже сталкивался с ситуацией когда при серфинге сайта на Joomla возникала ошибка 404 - документ не найден. Так вот ошибка 404 показывается посетителю тогда если та страница, которую он запросил, не существует или была удалена с сайта.

По умолчанию в Joomla существует страница ошибки 404, но она имеет следующий вид:

4042

Отдельная страница, никак с сайтом не связана, дизайн никакой. Это не очень хорошо потому, что пользователи вашего сайта могут сразу покинуть его, что и бывает в 99% случаев.

Необходимо оформить данную страницу в виде стандартной страницы Joomla, которая будет выглядеть и содержать все элементы, как и на самом сайте.

Для этого зайдите в административную панель Joomla, создайте стандартный (без использования K2) новый материал и дайте ему название, например «Ошибка 404 - страничка не найдена». Оформите ее соответственно, чтобы пользователь мог с этой страницы перейти на главную страницу или в другой удобный вам раздел. Можно сделать ссылку на страницу с формой обратной связи с администратором.

Далее для Joomla 2.5 и 3.0 в настройках материала из выпадающего списка "Категория" выберите "Uncategorised". (если такой опции нет, то создайте категорию с названием "Uncategorised").
Для Joomla 1.5 в настройках материала, из выпадающих списков «Раздел» и «Категория» выберите «Не указанно».

После этого сохраните материал и запомните его id (ID -это уникальный номер статьи или материала в практически любой CMS) - его можете найти на странице со списком материалов.

Продолжаем:

Создание страницы ошибки 404 в Joomla 2.5 и 3.0.

Для начала перейдите в папку: "имя сайта"/ templates/system/, скопируйте имеющийся там файл error.php в папку: ваш сайт/ templates/"название вашей темы".

tree

Этот файл мы будем редактировать и чтобы при последующем обновлении системы все наши изменения не пропали, мы скопировали его в папку с нашей темой.

Откройте данный файл при помощи какого либо редактора кода. Найдите в нем следующую строку:

<html  xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo  $this->language; ?>" lang="<?php echo $this->language;  ?>" dir="<?php echo $this->direction; ?>">

В этом файле удалите все ниже данной строки и вставьте вместо его следующий код:

<?php
if ($this->_error->get('code') == '404') {
header("HTTP/1.0 404 Not Found");
header('Location: index.php?option=com_content&view=article&id=уникальный номер материала');
exit;} ?>

После этого фразу - "уникальный номер материала" - замените на id того материала, который мы создавали для использования в качестве страницы 404. Сохраните файл, разместите на сервере. Готово. Но может возникнуть проблема с тем, что страница ошибки будет содержать еще лишние модули сайта. Для этого можно создать короткий адрес для вашей страницы 404.
Для этого создайте скрытое меню т. е. меню которое вы не будете выводить на сайте при помощи модуля.

создание модуля -

menu 

создание меню - 

menu2

В данном меню создайте пункт меню ведущий на материал используемый в качестве ошибки 404:

  • в поле "Тип пункта меню" выберите "Материал";
  • в поле "Выберите материал" укажите материал используемый для страницы 404;
  • в поле "Заголовок меню" можете указать что ни будь типа: "Ошибка 404 страница не найдена";
  • в поле "Алиас" error-404.

menu3

И нажмите "Сохранить".

Теперь после переадресации на страницу 404 ее адрес будет вида: http://имя сайта.ru/error-404.html или http://имя сайта.ru/error-404. Теперь добавьте данную страницу в файл robots.txt, чтобы она не индексировалась поисковыми системами. Для этого в robot.txt добавьте следующее: 

Disallow:   /error-404.html
Disallow:  /error-404

Можете попробовать ввести адрес любой несуществующей страницы и проверить результат.

Создание страницы ошибки 404 в Joomla 1.5. 

Пройдите в папку: "имя сайта"/ templates/system/ и откройте, при помощи какого либо HTML редактора файл: error.php.

Найдите в этом файле строку:

<!DOCTYPE  html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Удалите все что находится в этом файле ниже данной строки и вставьте следующее:

<?php defined('JPATH_BASE') or die();
echo file_get_contents(JURI::root().'index.php?option=com_content&view=article&id=43');?>

Только вместо значения «43» укажите идентификатор того материала который вы создали выше, для отображения в качестве страницы ошибки 404.
После этого сохраните данный файл и можете попробовать ввести адрес любой несуществующей страницы и проверить результат.

 

Последнее изменениеПятница, 25 Октябрь 2013 15:56
  • Оцените материал
    (0 голосов)
  • Опубликовано в Web coding
  • Прочитано 10338 раз
SeRbGa

SeRbGa

мечтатель

Сайт: www.serbga.ru

Оставить комментарий

Комментарии  

SeRbGa
0 #6 SeRbGa 09.03.2015 17:54
У вас там слеш двойной, ищите в коде /index.php. в файле ошибки 404. Обычно естьв папке с шаблоном страница error.php , но так трудно сказать сразу есть ли она у вас там она. В разных версиях джумлы с фреймворками от разных производителей эта страница находится в папке шаблона, но чуть глубже среди файлов фреймворка. Может быть в папке layers или html. Посмотрите в структуре.
Цитировать
Олег
0 #5 Олег 09.03.2015 16:20
Подскажите, страница ошибок меня устраивает родная, но как в ней изменить ссылку( некорректно работает ссылка на домашнюю страницу)?
здесь: http://dtp777.ru
Цитировать
SeRbGa
+1 #4 SeRbGa 28.10.2014 10:35
Это просто совет, сам проверял - у меня получилось, поэтому здесь и опубликовал этот материал. А вообще переходите уже на последнюю версию - Joomla 3
Цитировать
Dariya Litva
0 #3 Dariya Litva 28.10.2014 10:19
Здравствуйте. Делаю как у Вас написано, но не получается.http ://dariyalitva. kz/op joomla 1.5
Цитировать
Валентин
+1 #2 Валентин 03.07.2014 09:15
Спасибо!

Помогло!!!
Цитировать
Vermut
+1 #1 Vermut 25.10.2013 16:37
Помогло, спасибо!
Цитировать

Добавить комментарий


Защитный код
Обновить

Наверх

Популярные статьи

  • 1
  • 2
  • 3
  • 4

последние комментарии

ON-Line Блог SeRbGa.ru предоставляет самую свежую и актуальную информацию для веб-дизайнеров и разработчиков в виде тематических материалов, уроков созданных собственноручно, а так же переводов статей и новостей, полученных с зарубежных информационных ресурсов.

Копирование материалов сайта разрешено только с указанием активной индексируемой гиперссылки на данный сайт!

ДИСКЛЕЙМЕР/DISCLAIMER:

Я сам вдохновляюсь материалами, которые предлагаются вам на обозрение, будь то интересные руководства или полезные и впечатляющие подборки (дизайнов, шаблонов, макетов и т.д.), и по возможности всегда сохраняется ссылка на источники, и сообщается  автор изображений, использованных в подборках или руководствах. Зачастую, ссылка на источник не ведёт напрямую к автору шедевра, но если кто-то захочет использовать какие-либо изображения, графические элементы, исходники, которые здесь предоставлены, то единственное требование, выставленное к перепосту, заключается в сохранении ссылки на источник, а также соблюдение условий лицензионного соглашения (если таковое имеется). Если кто-то желает модифицировать тот или иной продукт, изменить его, подкорректировать, то ему придется самостоятельно искать настоящего автора материала.