Новости Joomla

Загадочный параметр $live_site в configuration.php 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 можно из объекта приложения

protected function doExecute(InputInterface $input, OutputInterface $output): int    {         //...              $live_site = $this->getApplication()->get('live_site');         //...    }
и исходя из этого строить дальнейшую логику.@joomlafeed#joomla #разработка #php #cli

Вышел плагин AllVideos v.7.0 от JoomlaWorks

Вышел плагин AllVideos v.7.0 от JoomlaWorks

Вышел плагин AllVideos v.7.0 от JoomlaWorks.Этот контент-плагин - одно из старейших расширений для Joomla. Его задача - преобразовывать шорт-коды вида

{YOUTUBE}...{/YOUTUBE},
{MP3}parth/to/file.mp3{/MP3} и подобные во встроенные видео или аудио.👩‍💻 v.7.0.0. Что нового?- Добавлена поддержка Youtube Shorts. Просто скопируйте полный url видео и вставьте его внутри тегов
{YOUTUBE}...{/YOUTUBE}.- Поддержка Joomla 5.x без плагина обратной совместимости. PHP 5, PHP 7, PHP 8. - Индексация умным поиском в CLI. В Joomla 5 плагин перестал вызывать ошибку при индексации контента умным поиском через CLI,Заметьте, что этот один и тот же пакет для всех версий Joomla, начиная с 1.5.x и заканчивая 5.x. Технически "под капотом" код плагина по сути не менялся, а для поддержки следующих версий Joomla авторы вставляют "заплатки". Плагин всё ещё использует старую архитектуру файлов и классов Joomla, что, к сожалению, заставляет прибавлять к его описанию слова "пока ещё" - "пока ещё работает".
Страница расширенияGitHub расширенияJoomla Extensions Directory👩‍💻 За ссылку спасибо самому внимательному участнику нашего сообщества - Ринату Кажетову (@rkazhet).@joomlafeed#joomla #расширения

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

zahar_92

  • Захожу иногда
  • 315
  • 8 / 0
Все привет!
Установил плагин экспорта материалов CFI от Joomline. Он подключает файл скрипта cfi.js через addScript. При этом он подключается как в админке, так и на фронте. Как подключить файл только в админке?
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Если на сайте нет авторизации то просто проверить юзера
В файле \plugins\system\cfi\cfi.php находите строки примерно 45-46 и оборачиваете в условие, будет срабатывать только если юзер авторизован (то есть не на фронте). Колхоз согласен, но работает )))

Код
if($_user) {
        $this->_doc->addScript('/plugins/system/cfi/assets/cfi.js');
        $this->_doc->addStylesheet('/plugins/system/cfi/assets/cfi.css');
}
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Как подключить файл только в админке?
Код: php
if($this->app->isAdmin())
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
будет срабатывать только если юзер авторизован (то есть не на фронте). Колхоз согласен, но работает )))
Чтоооооо, если админ авторизуется во фронте то файлы будут подключаться.... что за колхоз!
Вообще как можно было такое дерьмище написать.....
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

zahar_92

  • Захожу иногда
  • 315
  • 8 / 0
Код: php
if($this->app->isAdmin())
Спасибо, работает! Только if($this->_app->isAdmin()), иначе ошибка.
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Только if($this->_app->isAdmin()), иначе ошибка.
Согласно файлу https://github.com/joomla/joomla-cms/blob/staging/libraries/src/Plugin/CMSPlugin.php#L97 достаточно добавить в класс
Код: php
protected $app = null;
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

zahar_92

  • Захожу иногда
  • 315
  • 8 / 0
Согласно файлу https://github.com/joomla/joomla-cms/blob/staging/libraries/src/Plugin/CMSPlugin.php#L97 достаточно добавить в класс
Код: php
protected $app = null;
Ок, буду знать. Спасибо за помощь, плюсанул!
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Чтоооооо, если админ авторизуется во фронте то файлы будут подключаться.... что за колхоз!
Вообще как можно было такое дерьмище написать.....
в 99% сайтов на фронте авторизации нет, потому и написал с комментарием что где да как.
Да, вариант с админом лучше, спорить не буду
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как в шаблоне protostar подключить стиль с другой папки?

Автор azm1n

Ответов: 2
Просмотров: 602
Последний ответ 18.04.2025, 11:05:27
от azm1n
Как установить header Cache-Control только для одной страницы по URL?

Автор Slava77

Ответов: 0
Просмотров: 826
Последний ответ 23.03.2024, 00:16:36
от Slava77
Модуль Похожие метки – только более ранние статьи!

Автор Gerostrat

Ответов: 6
Просмотров: 926
Последний ответ 24.08.2023, 21:56:09
от sivers
Затроились все записи в админке Joomla 3.10

Автор rimm

Ответов: 7
Просмотров: 765
Последний ответ 17.04.2023, 12:41:58
от sivers
Показать пункт меню только указанным IP

Автор palexa

Ответов: 4
Просмотров: 842
Последний ответ 02.09.2022, 13:52:20
от darkghost