Новости 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 Гость просматривают эту тему.
  • 7 Ответов
  • 4982 Просмотров
*

palexa

  • Завсегдатай
  • 1108
  • 88 / 0
Нету переключения языков
« : 17.02.2018, 18:00:50 »
Как то странно, включаю модуль Переключение языков, модуль не отображает флаги для переключения языка

Три языка контента опубликовано, плагин    system / languagefilter опубликован

Что не так ?
*

kern.USR

  • Давно я тут
  • 827
  • 68 / 1
Re: Нету переключения языков
« Ответ #1 : 17.02.2018, 18:42:46 »
главные страницы для всех языков назначили?
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Re: Нету переключения языков
« Ответ #2 : 17.02.2018, 18:44:00 »
Как то странно, включаю модуль Переключение языков, модуль не отображает флаги для переключения языка

Три языка контента опубликовано, плагин    system / languagefilter опубликован

Что не так ?

Для каждого языка должна быть главная страница, и одна общая (получается что будет 4 главных страницы)
У тебя так?
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

palexa

  • Завсегдатай
  • 1108
  • 88 / 0
Re: Нету переключения языков
« Ответ #3 : 17.02.2018, 18:50:39 »
главные страницы для всех языков назначили?
Вроде понял, спасбо
*

palexa

  • Завсегдатай
  • 1108
  • 88 / 0
Re: Нету переключения языков
« Ответ #4 : 18.02.2018, 02:07:07 »
В чём смысл переключателя языков ? Перейти на главную страницу другого языка ?
« Последнее редактирование: 18.02.2018, 02:23:00 от palexa »
*

palexa

  • Завсегдатай
  • 1108
  • 88 / 0
Re: Нету переключения языков
« Ответ #5 : 18.02.2018, 02:24:19 »
В чём смысл переключателя языков ? Перейти на главную страницу другого языка ?
-- При переключении языков, если пункт меню данной страницы не привязан к другому пункту меню, модуль перенаправит посетителя на Главную страницу сайта, соответствующую данному языку.

Всё как то сложно, но вроде потихоничку начинаю понимать
« Последнее редактирование: 18.02.2018, 02:35:00 от palexa »
*

kern.USR

  • Давно я тут
  • 827
  • 68 / 1
Re: Нету переключения языков
« Ответ #6 : 18.02.2018, 13:26:47 »
В чём смысл переключателя языков ? Перейти на главную страницу другого языка ?
У вас должны стоять связи между пунктами меню на разных языках, чтоб система понимала, какой контент на русском, соответсвует контенту на английском
*

palexa

  • Завсегдатай
  • 1108
  • 88 / 0
Re: Нету переключения языков
« Ответ #7 : 18.02.2018, 13:49:52 »
Цитировать
потихоничку начинаю понимать

Пока перевожу только станицы, которые прямо привязаны к пунктам меню и делая связи

В дальнейшем надо будет переводить материалы в категории, то есть блоги, и материалы к пунктам меню не привязаны

Как быть с ними пока не понял, потому что не дошёл до этого. Очень надеюсь что сложностей не возникнет
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Поехал дизайн главной страницы одного из трех языков

Автор hlitov

Ответов: 3
Просмотров: 3427
Последний ответ 23.12.2024, 16:12:59
от enrikebosko288
Языков нет вообще

Автор nexirt

Ответов: 12
Просмотров: 5271
Последний ответ 25.07.2019, 17:08:27
от anatoliy221
[РЕШЕНО]Нестандартный переключатель языков Joomla 3.9.4

Автор Шмайсер

Ответов: 1
Просмотров: 2106
Последний ответ 30.03.2019, 13:00:12
от Шмайсер
В Extension Manager: Install Languages не видит языков

Автор mkvmexahuk

Ответов: 1
Просмотров: 4738
Последний ответ 09.03.2019, 19:40:31
от draff
Показ контента языка по умолчанию при отсутствии его перевода на один из языков

Автор vtym

Ответов: 6
Просмотров: 1568
Последний ответ 02.12.2017, 14:41:40
от vtym