Не могу поставить 404 страницу...

(Ответов: 5, Просмотров: 1673)
  1. Гуру
    • Регистрация: 24.04.2011
    • Сообщений: 801
    • Репутация: 126
    Добрый день. Вот, в одном сайте на joomla 2.5 решил поставить свою 404 страницу:
    1. Скопировал error.php в корень шаблона
    2. Создал материал
    3. Привязал к пункту меню
    4. Изменил error.php

    Развернуть текст


    PHP код:
    <?php
    /**
     * @package        Joomla.Site
     * @copyright    Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved.
     * @license        GNU General Public License version 2 or later; see LICENSE.txt
     */

    defined('_JEXEC') or die;
    if (!isset(
    $this->error)) {
        
    $this->error JError::raiseWarning(404JText::_('JERROR_ALERTNOAUTHOR'));
        
    $this->debug false;
    }
    //get language and direction
    $doc JFactory::getDocument();
    $this->language $doc->language;
    $this->direction $doc->direction;
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <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=362');
    exit;} 
    ?>
    [свернуть]

    Т.е. моя 404 страница имеет Id 362

    Вроде все сделал как надо, но не работает вот эта часть
    PHP код:
    <?php
    if ($this->_error->get('code') == '404') {
    header("HTTP/1.0 404 Not Found");
    header('Location: index.php?option=com_content&view=article&id=362');
    exit;} 
    ?>
    Если кроме него что-то свое писать - все нормально.
    Конечно, можно туда большой код шаблона поставить, но тогда у каждой страницы с ошибкой свой УРЛ будет, а так - все переходят на одну и ту же страницу.

    Кто-нибудь сталкивался с таким?
    Спасибо не пишут, а нажимают
    • 0
  2. Опытный Аватар для dik85
    • Регистрация: 25.03.2011
    • Сообщений: 291
    • Репутация: 47
    • Webmoney BL: ?
    Я изменял в templates/system/error.php некоторые строки, и всё работает, вот нашол пример _http://businessumcha.com/blog/optimizaciya-sayte/152-stranitsa-oshibok-dlya-joomla-2-5.html
    • 0
  3. Опытный Аватар для DOleg
    • Регистрация: 21.08.2010
    • Сообщений: 276
    • Репутация: 78
    • Webmoney BL: ?
    Цитата Сообщение от xilgiz Посмотреть сообщение
    Если кроме него что-то свое писать - все нормально.
    Значит не срабатывает условие.
    Первый символ в "_error" разве не лишний?
    • 0
  4. Опытный Аватар для genesis33
    • Регистрация: 10.09.2012
    • Сообщений: 453
    • Репутация: 72
    • Webmoney BL: ?
    Удаляете все из error.php добавляете код перехода на вашу страницу
    PHP код:
        <?php
    defined
    ('JPATH_BASE') or die();
    echo 
    file_get_contents(JURI::root().'/index.php?option=com_content&view=article&id=2207');
    ?>
    • 0
  5. Дипломник Аватар для CB9TOIIIA
    • Регистрация: 10.11.2009
    • Сообщений: 143
    • Репутация: 57
    • Webmoney BL: ?
    В .htaccess


    Код HTML:
    ErrorDocument 404 /404.php
    и в 404.php

    Можно добавить:

    Код HTML:
    <title><?php echo $this->error->getCode(); ?> - <?php echo $this->title; ?></title>
    Код HTML:
    <?php 
    header("HTTP/1.0 404 Not Found");   
    ?> и ниже HTML красоту :)
    Делал _http://joomla-support.ru/post162005.html#post162005
    • 0
  6. Гуру
    • Регистрация: 24.04.2011
    • Сообщений: 801
    • Репутация: 126
    Цитата Сообщение от dik85 Посмотреть сообщение
    Я изменял в templates/system/error.php некоторые строки, и всё работает, вот нашол пример _http://businessumcha.com/blog/optimizaciya-sayte/152-stranitsa-oshibok-dlya-joomla-2-5.html
    Работает, но мне нужно немного другое - что бы при 404 ошибке переадресовывалось на одну страницу 404 ошибки.

    Цитата Сообщение от DOleg Посмотреть сообщение
    Значит не срабатывает условие.
    Первый символ в "_error" разве не лишний?
    Я этим же кодом делал на другом сайте - все работает...


    Цитата Сообщение от genesis33 Посмотреть сообщение
    Удаляете все из error.php добавляете код перехода на вашу страницу
    PHP код:
        <?php
    defined('JPATH_BASE') or die();
    echo file_get_contents(JURI::root().'/index.php?option=com_content&view=article&id=2207' );
    ?>
    ТО же самое, что у dik85
    Что-то Ваш метод у меня не получается... У меня переходит на системную страницу 404. Его удалить что ли?
    CB9TOIIIA,

    ---------- Сообщение добавлено 19:05 ---------- Предыдущее 19:03 ----------

    Цитата Сообщение от dik85 Посмотреть сообщение
    Я изменял в templates/system/error.php некоторые строки, и всё работает, вот нашол пример _http://businessumcha.com/blog/optimizaciya-sayte/152-stranitsa-oshibok-dlya-joomla-2-5.html
    Работает, но мне нужно немного другое - что бы при 404 ошибке переадресовывалось на одну страницу 404 ошибки.

    Цитата Сообщение от DOleg Посмотреть сообщение
    Значит не срабатывает условие.
    Первый символ в "_error" разве не лишний?
    Я этим же кодом делал на другом сайте - все работает...


    Цитата Сообщение от genesis33 Посмотреть сообщение
    Удаляете все из error.php добавляете код перехода на вашу страницу
    PHP код:
        <?php
    defined('JPATH_BASE') or die();
    echo file_get_contents(JURI::root().'/index.php?option=com_content&view=article&id=2207' );
    ?>
    ТО же самое, что у dik85
    CB9TOIIIA, Что-то Ваш метод у меня не получается... У меня переходит на системную страницу 404. Его удалить что ли?
    Спасибо не пишут, а нажимают
    • 0

Похожие темы

Темы Раздел Ответов Последний пост
Ссылаться на страницу или страницу с якорем?
Общие вопросы поисковой оптимизации 5 02.07.2013 18:46
Хотели поставить баннер на главную страницу, а получился сквозной (Битрикс)
Web программирование 1 25.12.2012 09:24
Польза от ссылки на страницу www.site.com, если с её стоит 301-й редирект на страницу без www(т.е. site.com)
Вопросы от новичков 0 25.09.2012 15:25
Как поставить хайд?
Обсуждение форума и ваши предложения 1 05.10.2011 16:31

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры