Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Шаблон для 404.php

00 голосов
8
ПРоблема в следущем, есть файл 404.php, на него происходит редирект, если страница не найдена, для него я применяю шаблон, но он только работает, если в адресной строке на прямую вбивать /404.php, как сделать, чтобы шаблон применялся и при редиректе? Скорее всего нужно прописать условие в настройке сайта для этого шаблона, но какое? Есть ещё способ, с 404й страницы делать редирект на другую к которой применять шаблон, но мне именно нужно, чтобы на 404.php применялся шаблон.
спросил 30 Июнь, 13 от HoBa (140 баллов)

8 Ответы

00 голосов
Есть еще один способ, в файле 404.php есть стока
Код
@define("ERROR_404","Y"); 
Подключаете шаблон по условию PHP
Код
defined('ERROR_404')!==false
или
defined('ERROR_404')===true
Но лучше определить еще одну свою константу в файле 404.php и проверять её, чтобы шаблон гарантировано применялся только к файлу 404.php.
ответил 30 Июнь, 13 от Almarea (3,760 баллов)
00 голосов
условие - для папки или файла /404.php
ответил 03 Авг, 13 от Hax (1,100 баллов)
00 голосов
Цитата
Александр Кудин пишет:
условие - для папки или файла /404.php
Человек, же объяснил, что это не работает!
ответил 04 Ноя, 13 от Almarea (3,760 баллов)
00 голосов
Цитата
Дмитрий Яковенко пишет:
Цитата
Александр Кудин пишет:

условие - для папки или файла /404.php
Человек, же объяснил, что это не работает!


да) я затупил)
каюсь)
ответил 10 Фев, 14 от Hax (1,100 баллов)
00 голосов
Дмитрий Яковенко,
спасибо, работает по-вашему), только у вас опечатка небольшая
Код
defined('ERROR_404')!==false
нужно
Код
defined('ERROR_404')==false
но думаю вы сами это прекрасно знаете)
ответил 31 Май, 14 от HoBa (140 баллов)
00 голосов
Цитата
Евгений Иванкин пишет:
но думаю вы сами это прекрасно знаете)
Угу, абшипся.
Ток константу все таки лучше поменять, так как эта может устанавливаться в компоненте, когда элемент не найден.
ответил 28 Сен, 14 от Almarea (3,760 баллов)
00 голосов
Дмитрий Яковенко,
а можно подробнее про константу? не совсем понял....хм, сейчас ещё глянул, этот шаблон применился ко всему сайту)
ответил 31 Янв, 15 от HoBa (140 баллов)
00 голосов
Цитата
Евгений Иванкин пишет:
но думаю вы сами это прекрасно знаете)
Погодите, я не ошибся!
defined вернет true, если константа определена.
Значит Вам нужно условие
Код
defined('ERROR_404')!==false
или
Код
defined('ERROR_404')===true
ответил 14 Май, 15 от Almarea (3,760 баллов)

Похожие вопросы

0 голосов
3 ответов
спросил 12 Окт, 13 от Kania (5,180 баллов)
0 голосов
7 ответов
спросил 11 Июль, 13 от oPs (380 баллов)
0 голосов
2 ответов
спросил 29 Июнь, 13 от Beet (160 баллов)
0 голосов
5 ответов