Новости Joomla

Загадочный параметр $live_site в configuration.php Joomla

Загадочный параметр $live_site в configuration.php Joomla

Давным-давно, когда Joomla ещё была маленькой, в неё внедрили параметр $live_site. В ней хранился домен текущего сайта на случай, если Joomla не могла его определить из-за неверной настройки сервера. Нужно это было для разных SEO-компонентов, для использования редиректов и т.д.

Со временем для работы собственно сайта этот параметр перестал быть нужным. Уже в начале 2010-х стали встречаться рекомендации оставлять этот параметр пустым, дабы оный не привёл к лишним проблемам и путанице. Тем более, в web-админке нет места, где его можно указать или посмотреть его значение. Только в configuration.php, а туда смотрят не часто.

Однако, параметр всё же остался в ядре Joomla. Зачем он нужен? А нужен он в 2-х случаях:

  • для работы класса Joomla\CMS\Uri\Uri, который часто используется в коде Joomla для работы методов
    Uri::root() и
    Uri::base(), а значит может влиять и на работу в том числе ajax-скриптов.
  • для работы Joomla в CLI - командной строке сервера. В случае если вы используете в вашем CLI-плагине методы опять-таки класса Uri, то CLI ничего не знает о текущем домене, так как запускается вне web-сервера.

Поэтому домен нужно указывать принудительно. Либо с помощью параметра командной строки

--live-site, например,
—live-site=https://site.ru/. Со слешем на конце, иначе в CLI адрес сайта станет
https://site.rujoomla.php.Либо в параметре
$live_site в файле configuration.php, так как
CliApplication берёт настройку оттуда, если параметр команды не указан или пуст.

⚠️ Иначе в качестве хоста и url класса Uri будет установлено https://joomla.invalid/set/by/console/application. В самом же коде команды получить параметр

$live_site можно из объекта приложения

<?php protected function doExecute(InputInterface $input, OutputInterface $output): int { //... $live_site = $this->getApplication()->get('live_site'); //... }

и исходя из этого строить дальнейшую логику.

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

Scorpion98

  • Захожу иногда
  • 58
  • 0 / 0
Привет ребят. ! . Вот проблема:
Я пользуюсь одним модулем(BT Content Slider) в двух местах. В самом материале( с помощью хака )
Код
<?php
$document   = & JFactory::getDocument();
$renderer   = $document->loadRenderer('modules');
$options    = array('style' => 'xhtml');
$position   = 'Posle Statyi';
echo $renderer->render($position, $options, null);
?>
и в 1-ой позиции.
После установки "позиции модуля в материале" исчезает модуль в первой позиции "В БЛОГЕ". Но в материале он отображается в нужном месте. Нет проблем с модулем в позиции "После Статьи". Помогите с этим я хотел бы чтоб модуль в первой позиции отображался Везде...
Блог http://jmerinka.ru/
Материал http://jmerinka.ru/rusca-dublyaj/qorxu/524-qara-geyinmi%C5%9F-qad%C4%B1n-2012
Спасибо заранее...
« Последнее редактирование: 28.05.2015, 18:33:04 от Scorpion98 »
*

Scorpion98

  • Захожу иногда
  • 58
  • 0 / 0
прошу помочь!
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Читайте как правильно выводить модуль средствами php:

https://docs.joomla.org/JModuleHelper/renderModule

Для Joomla 3.x версий нужно заменить:

Код: php
jimport( 'joomla.application.module.helper' );
на
Код: php
jimport( 'cms.module.helper' );
интернет-блог: http://websiteprog.ru
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Ошибка загрузки скрипта

Автор shane

Ответов: 0
Просмотров: 1373
Последний ответ 17.09.2019, 01:35:43
от shane
Ошибка 500 вместо 404 на несуществующих страницах с расширением только php

Автор old_lotar

Ответов: 12
Просмотров: 2376
Последний ответ 12.02.2019, 12:58:13
от draff
Ошибка в слове на главной странице. Как исправить?

Автор nqui

Ответов: 3
Просмотров: 3217
Последний ответ 29.03.2018, 05:15:41
от TkGhoul
Ошибка &amp;amp;amp;amp;quot;error&amp;amp;amp;amp;quot;. нужен специалист! гарантирую оплату!

Автор mimoza

Ответов: 6
Просмотров: 1766
Последний ответ 25.02.2018, 14:47:40
от mimoza
ошибка. <script src="//vk.com/js/api/openapi.js?123"></script>

Автор foller10560

Ответов: 5
Просмотров: 2483
Последний ответ 30.08.2017, 10:44:23
от foller10560