Новости Joomla

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

salikoff

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Здравствуйте. Подскажите, пожалуйста, как можно определить главную страницу для языка сайта?
Имеется двуязычный сайт.
Есть два меню - одно для русского языка, другое для английского.
В каждом меню указана главная страница.
Таким образом на сайте две главных страницы.
Как же мне определить, что я на главной?

$menu = & JSite::getMenu();
if ($menu->getActive() == $menu->getDefault()) {$fpage="1";}

не работает,

JRequest::getVar('view', null)  == "frontpage" тоже не работает

Можно, конечно узнавать по Itemid, например так: JRequest::getInt( 'Itemid', 1, 'get' ),
но это как-то не универсально.

Посоветуйте красивое правильное решение
*

salikoff

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Спасибо, разобрался сам.

JRequest::getVar('home', null)  если 1 - то главная, если 0 - то не главная
*

linykc

  • Осваиваюсь на форуме
  • 30
  • 13 / 0
Столкнулся с той же проблемой, способ предложенный salikoff к сожалению не помог.

зато нашел в сети другой, может пригодится кому.

Для версий Joomla 1.6/1.7/2.5 есть некоторые отличия, поэтому для них, в случае одноязычного сайта, следует использовать следующий код:
Код
<?php
$app = JFactory::getApplication();
$menu = $app->getMenu();
if ($menu->getActive() == $menu->getDefault())  :
?>
<div>Этот блок виден только на главной странице.</div>
<?php endif; ?>
Для многоязычного сайта на Joomla главная страница зависит от текущего языка, поэтому нам нужно использовать следующий код:

Код
<?php
$app = JFactory::getApplication();
$menu = $app->getMenu();
if ($menu->getActive() == $menu->getDefault( 'en-GB' )) :
?>
<div>Этот блок виден только на главной странице.</div>
<?php
elseif ($menu->getActive() == $menu->getDefault( 'fr-FR' )) :
?>
<div>Этот блок виден только на главной странице.</div>
<?php endif; ?>

Для многоязычного сайта на Joomla, возможно, будет необходимо показывать определенные блоки на главных страницах для всех языков.

Код
<?php
$app = JFactory::getApplication();
$menu = $app->getMenu();
$lang = JFactory::getLanguage();
if ($menu->getActive() == $menu->getDefault($lang->getTag())):
?>
<div>Этот блок виден только на главной странице.</div>
<?php endif; ?>
   
На основе материалов с http://docs.joomla.org

источник _http://romul.name/2012/10/09/how-to-determine-if-the-user-is-viewing-the-front-page/
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

При включении плагина "Система - фильтр языка" сайт не открывается

Автор Aurika

Ответов: 4
Просмотров: 3084
Последний ответ 25.06.2022, 14:14:40
от ecolora
как выводить категории на главной странице.

Автор makarovse

Ответов: 7
Просмотров: 2362
Последний ответ 03.04.2022, 19:50:42
от THE KILLERS
Определение города пользователя по IP

Автор ria_andy

Ответов: 8
Просмотров: 6617
Последний ответ 05.12.2019, 15:20:40
от nikolaevevge
Ошибка при сохранении страницы

Автор gaa001

Ответов: 3
Просмотров: 1286
Последний ответ 05.11.2019, 14:14:37
от gaa001
Последние посещенные страницы пользователем

Автор Fedor Vlasenko

Ответов: 18
Просмотров: 7368
Последний ответ 06.08.2019, 13:41:48
от pH43