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

LemSug

  • Новичок
  • 6
  • 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
Может хотя бы направление для поиска подкинет кто?
*

Ilhom666

  • Живу я здесь
  • 1305
  • 166
в плагине Фильтр языка "Автоматическая смена языка" не включена?
*

LemSug

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

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

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

  => мои публикации
    => мои работы
      => спектр моих услуг
*

LemSug

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

LemSug

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

LemSug

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

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

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

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

  => мои публикации
    => мои работы
      => спектр моих услуг
*

AndreN

  • Осваиваюсь на форуме
  • 31
  • 1
вот так попробуйте

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

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

effrit

  • Группа развития
  • 7586
  • 822
  • effrit.com
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не могу убрать заголовок страницы с главной

Автор Ханиган

Ответов: 2
Просмотров: 50
Последний ответ Сегодня в 19:50:45
от Ханиган
Перенаправление url при смене версии Joomla и прежней структуры сайта

Автор Afman

Ответов: 20
Просмотров: 342
Последний ответ 23.09.2017, 08:15:02
от voland
Искажается отображение модуля при прокрутке сайта

Автор vipex

Ответов: 2
Просмотров: 59
Последний ответ 10.09.2017, 16:43:36
от vipex
Как открыть материал без шаблона сайта

Автор m1804

Ответов: 2
Просмотров: 68
Последний ответ 08.09.2017, 13:50:37
от m1804
Вместо сайта отображается форма Joomla

Автор sts34

Ответов: 15
Просмотров: 208
Последний ответ 06.09.2017, 11:27:48
от lexxbry