Еще одна ценная пропажа после переезда форума.
Не могу найти пост где описывалось как задать человеческую страницу 404.
А то она в скрипте почему проигнорированна.
Может у кого то сохранилась инфа?
Еще одна ценная пропажа после переезда форума.
Не могу найти пост где описывалось как задать человеческую страницу 404.
А то она в скрипте почему проигнорированна.
Может у кого то сохранилась инфа?
Вопрос про обработку ошибки 404 был проигнорирован компетентными людьми ещё полгода+ назад.
А он всплывает снова, как его не топи.
Поиском в коде найти
и заменить наPHP код:
} else {
$is_friendly_url = false;
header("HTTP/1.0 404 Not Found");
header("Status: 404 Not Found");
exit;
}
404.shtml - ваш подготовленный файл ошибки в корневой директории скрипта.PHP код:
} else {
$is_friendly_url = false;
$file404 = "404.shtml";
if(file_exists($file404)) {
$echo_string = implode("",file($file404));
} else {
$echo_string = "404 error: Page not found.";
}
echo $echo_string;
exit;
}
Будет включено в дистрибутив Viart shop v.4.08RE
В верхней директории (html) в файле friendly_url.php
Действительно, теперь всё работает
Не забудьте создать файл 404.shtml - как и было сказано выше.
Последний раз редактировалось Shmasser; 17.09.2011 в 14:59.
вот эти заголовки не зря там стоят, а Вы их убрали...
header("HTTP/1.0 404 Not Found");
header("Status: 404 Not Found");
потом народ удивляется, почему в индексе яндекса каша из непонятных страниц...
Эти заголовки сообщают поисковым серверам, что страницы не существует. Их нужно оставить
Вот как я сделал, не мудрувовствая лукаво
PHP код:
} else {
$is_friendly_url = false;
header("HTTP/1.0 404 Not Found");
header("Status: 404 Not Found");
$nofound = 'http://' . $_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
echo <<<END
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HTML><HEAD>
<TITLE>404 Not Found</TITLE>
</HEAD><BODY>
<H1>Not Found</H1>
The requested URL <I><B>$nofound</B></I> was not found on this server.<BR><BR>
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
<HR>$nofound | $_SERVER[SERVER_NAME]
<P><I><A HREF="http://$_SERVER[SERVER_NAME]">http://$_SERVER[SERVER_NAME]</A></I></P>
</BODY></HTML>
END;
exit;
}
Последний раз редактировалось Andrej; 19.11.2011 в 12:36.
Подскажите пожалуйста.
1. Возможно ли интегрировать "страницу 404" в сайт?
Т. е. не просто создать отдельный файл-страницу с уведомлением об ошибке, а вставить на неё блоки движка. Я хочу, чтобы при попадании на такую страницу пользователь смог не только вернуться на главную, но и воспользоваться ссылками из стандартных блоков ("Производители", "Каталог", "Статьи" и т. д.).
2. Как сделать, чтобы после попадании пользователя на "страницу 404" он смог вернуться назад не средствами браузера, а кнопкой на странице? Может такое уже есть в Виарте?
3. И ещё (возможно не в тему).
Как сделать, чтобы при попадании пользователя на "страницу 404" администратору приходило уведомление с информацией, с какой страницы был переход? Для того, чтобы было проще находить и исправлять ошибки.
Идея хорошая. С индивидуальными настройками этой страницы в конструкторе страниц.интегрировать "страницу 404" в сайт
Сообщение от oldmanager
Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 195 сообщение(ий)):У вас нет прав чтобы видеть скрытый текст, содержащийся здесь.
Последний раз редактировалось Aleksey; 23.04.2012 в 14:15.
Вроде сделал, как написано, но появляется ошибка:
Warning: include_once(includes/page_layout.php) [function.include-once]: failed to open stream: No such file or directory in Z:\home\example.ru\www\friendly_url.php on line 273
Warning: include_once() [function.include]: Failed opening 'includes/page_layout.php' for inclusion (include_path='.;/usr/local/php5/PEAR') in Z:\home\example.ru\www\friendly_url.php on line 273
oldmanager, когда же вы уже перейдете на 4.0.8?
В 3.6 page_layout.php нету...
PS: И создание страницы CMS что-то не нашел.
Последний раз редактировалось Aleksey; 23.04.2012 в 14:27.
В 4.0.8 можно создать именно "страницу CMS", которая будет отображаться в конструкторе страниц. Хотя и у "страницы сайта" тоже есть свой конструктор...Сообщение от oldmanager
Быстро же вы сдались.Сообщение от oldmanager
Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 195 сообщение(ий)):У вас нет прав чтобы видеть скрытый текст, содержащийся здесь.
Ну почему же? Я думаю, к лету англичане выпустят, ну а чуть позже наши адаптируют. А пока можно и 3,6 помучить Тем более, что у меня уже почти всё готово, процентов на 80-90.
P.S. А на второй и третий мои вопросы что-то никто не ответил
Вау!!! Круто!!!
Спасибо, Aleksey, теперь всё получилось!
P.S. Когда я стану большой (со своим крутым интернет-магазином на Виарте), то все доработки движка буду заказывать у Алексея.
Последний раз редактировалось oldmanager; 13.05.2012 в 22:41.
Попробую я ответить на второй вопрос, раз никто не отвечает...Сообщение от oldmanager
• Cоздать доп. модуль.
• В содержании модуля написать:
• Этот доп. модуль вставить на страницу 404.Код HTML:<input type="button" class="button" onclick="history: history.go(-1);" value="{BACK_BUTTON}" />
Но придется создать еще и классы/стили, чтобы избавиться от всяких рамок и бэкграунда вокруг кнопки...
Последний раз редактировалось Aleksey; 23.04.2012 в 22:29.
В большинстве случаев 404 выскакивает при переходе из поисковиков. Меню магазина (каталог) логично и удобно А смысл огорода с кнопкой бэк?
Копать надо в сторону функции va_mail. Как она вызывается - можно подсмотреть в order_items.php. А сам код ее вызова вставить перед кодом вывода страницы 404.Сообщение от oldmanager
Что то я чего то недопонял. А кто вопрос про кнопку задавал-то? Разве не вы?Сообщение от oldmanager
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)
Социальные закладки