Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 12 Ответов
  • 3478 Просмотров
*

LemSug

  • Новичок
  • 6
  • 0 / 0
Доброго времени суток.

Есть мультиязычный сайт (русская и украинская версии). На сайте используется Кобальт 8.
Настроил кастомную страницу 404 используя гайд из документации Joomla! https://docs.joomla.org/Create_a_Custom_404_Error_Page Работает. Но надо что бы с укр. версии сайта кидало на укр. вариант 404.
id статьи для русской 404 561, а для укр. 562.
Думал раньше, что умею пользоваться поиском, но я банально не смог найти ни одного упоминания о нескольких страницах 404 для одного сайта.
Посоветовали в errors.php к существующему коду для одной страницы 404
Код
if (($this->_error->getCode()) == '404') {
header("HTTP/1.0 404 Not Found");
header('Location: /index.php?option=com_cobalt&view=record&id=561');
exit;}
добавить такой код:
Код
<?php
$url =
$_SERVER['HTTP_REFERER'];
$lang = '/uk/';

$pos = strpos($url, $lang);

if($pos){
 $id = 562;
} else{
 $id = 561;
}
if (($this->_error->getCode()) == '404') {
header("HTTP/1.0 404 Not Found");
header("Location: /index.php?option=com_cobalt&view=record&id=$id");
exit;}
?>
К сожалению не работает. С укр. зеркала упорно продолжает перекидывать только на русскую 404 (index.php?option=com_cobalt&view=record&id=561)
Чувствую, что упускаю что-то не сложное, но не могу никак понять что ж не так.
Надеюсь на вашу помощь.
*

LemSug

  • Новичок
  • 6
  • 0 / 0
Может хотя бы направление для поиска подкинет кто?
*

Ilhom666

  • Завсегдатай
  • 1384
  • 184 / 0
в плагине Фильтр языка "Автоматическая смена языка" не включена?
*

LemSug

  • Новичок
  • 6
  • 0 / 0
Ilhom666, включена.
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Неверный подход. И в с мануалом я не согласен, ИМХО, вредная статья, в которой описывается не решение, а хак. За вывод ошибок без перенаправлений отвечает файл шаблона error.php. В нём можно указать языковые константы.
*

LemSug

  • Новичок
  • 6
  • 0 / 0
Филипп Сорокин, Именно этот файл и редактировал. Каким образом указываются языковые константы, не подскажете?
*

LemSug

  • Новичок
  • 6
  • 0 / 0
effrit, не выходит. Либо я не там пишу. В php понимаю чуть больше чем ничего, к сожалению.
*

LemSug

  • Новичок
  • 6
  • 0 / 0
effrit, Вы мой спаситель. Работает наконец-то. Весь мозг сломал уже пытаясь настроить. Спасибо огромное.
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Филипп Сорокин, Именно этот файл и редактировал. Каким образом указываются языковые константы, не подскажете?

Откройте дефолтный файл error.php шаблона Protostar и посмотрите, как там реализован вывод ошибок. Перенаправление — это ужасный хак, никогда так не делайте. Вы даже описание ошибки не сможете вывести, а это всегда очень полезно при мало-мальски грамотном подходе к разработке.
*

AndreN

  • Захожу иногда
  • 55
  • 1 / 0
вот так попробуйте

Код
$id = 562;
$lang = JFactory::getLanguage();
$lng=$lang->getTag();
if($lng=="ru-RU") $id=561;

561 - это id страницы ошибки. А что тогда 562 в первой строчке?
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не работает мобильная версия сайта

Автор jeans

Ответов: 4
Просмотров: 1373
Последний ответ 21.05.2025, 12:44:06
от jeans
Разные меню для мобильной и для ПК версии сайта

Автор jimka

Ответов: 7
Просмотров: 1452
Последний ответ 24.03.2025, 20:03:01
от R31rus
Множество несуществующих ссылок при обходе сайта роботом Яндекс

Автор goga_pgasovav

Ответов: 7
Просмотров: 1421
Последний ответ 10.12.2024, 18:44:25
от goga_pgasovav
Антивирус нашел вредоносный код в двух файлах сайта polyfill

Автор buto

Ответов: 4
Просмотров: 1241
Последний ответ 19.10.2024, 10:56:55
от wishlight
Перенести описание категории вниз страницы

Автор jimka

Ответов: 1
Просмотров: 1212
Последний ответ 18.07.2024, 08:02:46
от Vastriet