Форум русской поддержки Joomla!® CMS
29.03.2017, 07:26:53 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Отобразить свою страницу об ошибке, отличной от 404

 (Прочитано 5340 раз)
0 Пользователей и 1 Гость смотрят эту тему.
AlekVolsk
Профи
********

Репутация: +329/-3
Offline Offline

Пол: Мужской
Сообщений: 6664



« : 02.04.2014, 10:58:27 »

В корне папки с шаблоном лежит error.php, который вызывается при возникновении ошибки 404. Возможно ли его модифицировать под отображение любой ошибки, возвращающей сервером: 403, 500 и т.д. И как перенаправить вывод всех этих ошибок в этот файл.

Мой error.php:
Показать текстовый блок

PS: в идеале, чтобы содержимое между 1-м и 2-м <hr /> отображалось только для  404, возможно?
Записан
AlekVolsk
Профи
********

Репутация: +329/-3
Offline Offline

Пол: Мужской
Сообщений: 6664



« Ответ #1 : 03.04.2014, 08:18:29 »

Блин, что, никто не делал подобного?
Записан
AlekVolsk
Профи
********

Репутация: +329/-3
Offline Offline

Пол: Мужской
Сообщений: 6664



« Ответ #2 : 06.04.2014, 01:21:51 »

Решено средствами .htaccess согласно руководства. Заменил /errors/*.html из примера на templates/templname/*.php. Рекомендую в FAQ.
Записан
ELLE
Support Team
*****

Репутация: +864/-0
Offline Offline

Пол: Женский
Сообщений: 4753



« Ответ #3 : 06.04.2014, 01:32:16 »

http://docs.joomla.org/Custom_error_pages

Там где "Customizing Error Messages"

if ($this->error->getcode() == '404')

и т.д, без всякого .htaccess
Записан
AlekVolsk
Профи
********

Репутация: +329/-3
Offline Offline

Пол: Мужской
Сообщений: 6664



« Ответ #4 : 06.04.2014, 09:59:29 »

Не очень с английским, уточняю: в одном error.php в шаблоне внутри конструкции if ($this->error->getcode() == 'error_code') {} вывод сообщения о соответствующей ошибке?
Записан
b2z
Support Team
*****

Репутация: +723/-0
Offline Offline

Пол: Мужской
Сообщений: 7627


Разраблю понемногу


« Ответ #5 : 06.04.2014, 11:21:06 »

Не очень с английским, уточняю: в одном error.php в шаблоне внутри конструкции if ($this->error->getcode() == 'error_code') {} вывод сообщения о соответствующей ошибке?
Да.

Код
<?php  if ($this->error->getcode() == '404') { ?>
       <div id="errorboxheader">Не найдено!</div>
               <div id="errorboxbody"><p>Сорри! Страница не найдена.</p>
               </div>
       </div>
<?php } ?>
 
<?php  if ($this->error->getcode() == '500') { ?>
       <div id="errorboxheader">Ошибка!</div>
               <div id="errorboxbody"><p>Ошибка на стороне сервера.</p>
               </div>
       </div>
<?php } ?>
Записан
Fedor Vlasenko
Профи
********

Репутация: +698/-5
Offline Offline

Пол: Мужской
Сообщений: 3826


Все начинается с Value


« Ответ #6 : 06.04.2014, 12:50:18 »

лучше switch смотрится здесь
Код
switch ($this->error->getcode()) {
case 404:
   //работаем, выводим разметку, включаем внешний файл или отображаем нужные данные
   break;
case 500:
   echo "идет работа над вашей ошибкой";
   break;
case 503:
   echo "Админу выслано письмо он стукнет вам в монитор :-) ";
   break;
default:
   echo "Все остальные ошибки";
}
Записан
AlekVolsk
Профи
********

Репутация: +329/-3
Offline Offline

Пол: Мужской
Сообщений: 6664



« Ответ #7 : 06.04.2014, 14:07:41 »

Fedor, а вывод разметки разве подходит только для 404? Такое универсальное решение прокатит?:
Показать текстовый блок
« Последнее редактирование: 06.04.2014, 14:45:31 от AlekVolsk » Записан
AlekVolsk
Профи
********

Репутация: +329/-3
Offline Offline

Пол: Мужской
Сообщений: 6664



« Ответ #8 : 06.04.2014, 14:44:23 »

Одно плохо - кодировка не та, кракозябрами выводит. Файл в utf-8 !bom, AddDefaultCharset UTF-8 в .htaccess добавлен, на сайте все ок, а error.php выводит криво. Где что посмотреть можно?
Записан
Grigory S.
Завсегдатай
*****

Репутация: +69/-0
Offline Offline

Пол: Мужской
Сообщений: 686


(с)


« Ответ #9 : 06.04.2014, 14:55:57 »

Добавьте текст в языковые файлы шаблона и не мучайтесь Azn
Записан
AlekVolsk
Профи
********

Репутация: +329/-3
Offline Offline

Пол: Мужской
Сообщений: 6664



« Ответ #10 : 06.04.2014, 14:58:53 »

В смысле, цеплять константами? не прокатывает, пробовал ;(
Записан
Fedor Vlasenko
Профи
********

Репутация: +698/-5
Offline Offline

Пол: Мужской
Сообщений: 3826


Все начинается с Value


« Ответ #11 : 06.04.2014, 17:07:21 »

Одно плохо - кодировка не та, кракозябрами выводит. Файл в utf-8 !bom, AddDefaultCharset UTF-8 в .htaccess добавлен, на сайте все ок, а error.php выводит криво. Где что посмотреть можно?
Попробуйте в head
Код
<meta charset="utf-8">
Записан
AlekVolsk
Профи
********

Репутация: +329/-3
Offline Offline

Пол: Мужской
Сообщений: 6664



« Ответ #12 : 06.04.2014, 17:27:51 »

Работает, спасибо, +.
Решено.
Рекомендую в FAQ.
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet