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

slepoy

  • Давно я тут
  • 753
  • 24 / 0
  • Тотальная шизофазия
Здравствуйте.

Предпосылка: в компоненте JReviews возникла проблема при публикации рецензии (отзыва) к материалу при использовании редактора. Вставив текст в WYSIWYG-редактор и нажимая клавиши BACCKSPACE или DEL, он начинает вести себя очень странно (удаляет весь текст или дублирует (вставляет еще копию)). Записан результат на видео: https://www.youtube.com/watch?v=VbkmDky_j2k&feature=youtu.be , но можно пощупить и самостоятельно http://crimson-land.ru/films/7226-turbo-patsan пользователем demo/demo.

С данной проблемой я обратился к разработчику компоненту и получил такой ответ:
Цитировать
The new editor is not compatible with mootools which is being loaded on your site. Mootools was removed from Joomla in favor of jQuery so something on your site is forcing it to load. Unfortunately the editor we use is a 3rd party editor and we cannot fix the problems caused by this incompatibility. You will need to try removing mootools.
Как я понял, какое-то другое расширение использует Mootools (разработчик не указал или не смог выяснить какое именно) и мне необходимо от его избавиться?

Я не в состоянии увидеть что-либо в консоли браузера. Однако, в исходном коде вижу:
Цитировать
<script src="/media/system/js/mootools-core.js" type="text/javascript"></script>
Где js - просто папка со скриптами js?

Скачал архив сайта и выполнил поиск mootools-core.js - таким образом нашел один файл, вызывающий перечень файлов:
components\com_community\templates\jomsocial\layouts\facebook.inviteframe.php (2 hits)
Т.к. не использую ни фесбук-коннект, ни приглашение друзей из фейсбука в соц.сеть компонента JomSocial, то смело удалил файл facebook.inviteframe.php .
Однако даже после очистки кэшка он по-прежнему присутствует в исходном коде страницы.
Цитировать
<script src="/media/system/js/mootools-core.js" type="text/javascript"></script>

Можно удалить файл mootools-core.js и посмотреть на результат. Но каким образом определить, что его вызывает?

Спасибо.
« Последнее редактирование: 04.11.2015, 19:38:45 от slepoy »
Помог? Поставь(те) плюс в репутацию.
*

Emods

  • Новичок
  • 6
  • 1 / 0
Вызывает его в index.php твоего шаблона <jdoc:include type="head",  jdoc файл находится по адресу /libraries/joomla/document/html/renderer/head.php,  но если его отключить в index.php отключатся библиотеки jquery и mootools
*

fbr

  • Завсегдатай
  • 1661
  • 206 / 7
Не важно кто выводит.
Попробуйте после вывода head добавить:
Код: php
<jdoc:include type="head"/>
<?php unset($this->_scripts[$this->baseurl.'/media/system/js/mootools-core.js']); ?>
*

slepoy

  • Давно я тут
  • 753
  • 24 / 0
  • Тотальная шизофазия
В файл шаблон/component.php (т.к. в index.php что-то иное) добавил рекомендуемую строку и получилось:

Код
<?php
defined('_JEXEC') or die('Restricted access');

$doc = JFactory::getDocument();

$doc->addStyleSheet($this->baseurl . '/media/jui/css/bootstrap.min.css');
$doc->addStyleSheet($this->baseurl . '/media/jui/css/bootstrap-extended.css');
$doc->addStyleSheet($this->baseurl . '/media/jui/css/bootstrap-responsive.css');

// Add JavaScript Frameworks
JHtml::_('bootstrap.framework');

// get HTML head data
$head = $this->getHeadData();

// remove deprecated meta-data (html5)
unset($head['metaTags']['http-equiv']);

$this->setHeadData($head);

?>
<!DOCTYPE HTML>
<html lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>" >
<head>
    <meta charset="<?php echo $this->getCharset(); ?>">
    <jdoc:include type="head" />
<?php unset($this->_scripts[$this->baseurl.'/media/system/js/mootools-core.js']); ?>
</head>
<body class="contentpane">
    <jdoc:include type="message" />
    <jdoc:include type="component" />
</body>
</html>

Но, к сожалению, это не сработало.

Спасибо.
Помог? Поставь(те) плюс в репутацию.
*

fbr

  • Завсегдатай
  • 1661
  • 206 / 7
Посмотрите в этой теме
http://joomlaforum.ru/index.php/topic,253684.0.html

может найдете решение
*

fbr

  • Завсегдатай
  • 1661
  • 206 / 7
Еще раз проверил у себя
Скрипт подключал all videos
дописал строку - убил)
должно работать

Старые слайдеры любят подключать
*

slepoy

  • Давно я тут
  • 753
  • 24 / 0
  • Тотальная шизофазия
дописал строку - убил
Какую именно строку? Рекомендуемую ранее в этом топике? К сожалению, для меня не сработало (да, используется all video).

Попробую плагин: http://joomlaforum.ru/index.php/topic,253684.msg1590564.html#msg1590564

Обновлено: плагин помог решить проблему.

Спасибо.
« Последнее редактирование: 04.11.2015, 19:38:28 от slepoy »
Помог? Поставь(те) плюс в репутацию.
*

fbr

  • Завсегдатай
  • 1661
  • 206 / 7
:)
если у вас подключен all videos и вы убьете mootools - видео перестанет работать
если вам видео не нужно, просто отключите плагин, и mootools не будет загружаться

*

slepoy

  • Давно я тут
  • 753
  • 24 / 0
  • Тотальная шизофазия
Спасибо за информацию  ^-^

Использую all videos только для трансляции видео/аудио с других сервисов (youtube, daylimotion, soundcloud) и не храню медиа-файлы на сервере. На данный момент ролики от youtube вставленные в материал в виде кода {youtube}67pLx-wItvY{/youtube} работают (проигрываются в родном плеере).


Позволю себе немного оффтопа:
Вижу в исходном коде страницы, где используется All Video след. строки:
Цитировать
<script src="/plugins/content/jw_allvideos/jw_allvideos/includes/js/jwp.js.php?v=4.7.0" type="text/javascript"></script>
<script src="/plugins/content/jw_allvideos/jw_allvideos/includes/js/jwplayer/jwplayer.js?v=4.7.0" type="text/javascript"></script>
Выходит, если я не храню на сервере файлы, не проигрываю их с помощью плеера от All Video, то от данных скриптов стоит избавиться?

Спасибо.
Помог? Поставь(те) плюс в репутацию.
*

fbr

  • Завсегдатай
  • 1661
  • 206 / 7
Блин!
all videos удобный плагин, но подгружает 170К!
Выключите - и ничего подгружаться не будет
Простое альтернативное  решение для вставки видео:
Код: html4strict
<div class="videowrapper">
<iframe src="http://www.youtube.com/embed/код_видео" autoplay="0" frameborder="0" allowfullscreen></iframe>
</div>

Код: css
.videowrapper {
    float: none;
    clear: both;
    width: 100%;
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 25px;
    height: 0;
}
.videowrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
внешнему блоку всего этого кода должен быть явно задан размер в px или %
*

GeoD

  • Осваиваюсь на форуме
  • 36
  • 0 / 0
Простое альтернативное  решение для вставки видео:

Отличное решение!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Исчез компонент 'Поля' из меню в админке

Автор goga_pgasovav

Ответов: 2
Просмотров: 1295
Последний ответ 23.12.2024, 22:31:21
от goga_pgasovav
Как компонент вывести на страницу?

Автор adm

Ответов: 4
Просмотров: 1097
Последний ответ 07.04.2023, 10:30:39
от sivers
Call to a member function NewColorizeImage() on null при переходе PHP 7 [Решено]

Автор Eholov

Ответов: 3
Просмотров: 3191
Последний ответ 17.03.2023, 11:03:04
от Olexa
Компонент хроноформс 5

Автор Усанин Сергей

Ответов: 0
Просмотров: 867
Последний ответ 13.03.2023, 12:42:12
от Усанин Сергей
Отключить кэширование для страницы или модуля

Автор velyar

Ответов: 8
Просмотров: 1866
Последний ответ 20.11.2021, 16:47:58
от Byzi