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

silverman

  • Новичок
  • 3
  • 0 / 0
Joomla 1.6

Есть меню в нем один пункт "Войти". При нажатии появляется форма авторизации. Когда пользователь авторизуется этот пункт остается. Как сделать, чтобы вместо него показывался пункт "Выйти" с соответствующей функцией?
« Последнее редактирование: 02.03.2011, 09:24:03 от silverman »
*

Mihanja80

  • Завсегдатай
  • 1918
  • 168 / 4
  • Всю жизнь учусь...
создать два разных меню, в одном меню вход, в другом выход. Одно доступно гостям, другое пользователям...
Я с мобильного, в основном...
*

silverman

  • Новичок
  • 3
  • 0 / 0
создать два разных меню, в одном меню вход, в другом выход. Одно доступно гостям, другое пользователям...

Логичный подход. Но теперь возникли вопросы:
Как сделать пункт меню, доступный только гостям (в Joomla для незарегистрированных только public, но он виден всем)?
Как настроить пункт меню, чтобы он вел на выход?

Сделать элемент доступным только для гостей стандартными средствами можно так:
http://docs.joomla.org/ACL_Tutorial_for_Joomla_1.6#Allowing_Guest-Only_Access_to_Menu_Items_and_Modules

В общих чертах: нужно создать группу, унаследованную от Public и назначить ее группой для гостей, что делается в глобальных настройках пользователей.

А как настроить «Выход» на непосредственный выход?
*

silverman

  • Новичок
  • 3
  • 0 / 0
Решил второй вопрос. Нужно кнопке «Выход» задать тип Внешний URL и указать ссылку
index.php/logout?task=user.logout
*

Санчо

  • Захожу иногда
  • 239
  • 10 / 0
  • Алексей Харламенков
index.php/logout?task=user.logout

У меня выдаётся ошибка с текстом:
Цитировать
1056 - Недействительный контроллер: имя = 'user', формат = ''
*

z-17

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
та же ошибка выдаётся.
как сделать кнопку выход ссылкой?
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Решил второй вопрос. Нужно кнопке «Выход» задать тип Внешний URL и указать ссылку
index.php/logout?task=user.logout
Странно, что у Вас это работает. По идее должна быть ошибка Invalid Token, потому что в форме logoutа должен быть JToken, который потом проверяется контроллером.

Можно попробовать такую ссылку повесить:
Код: php
<?php echo JRoute::_( 'index.php?option=com_users&task=logout&' . JUtility::getToken(). ' = 1' ); ?>
*

z-17

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Код
Parse error: syntax error, unexpected T_STRING in /var/www/u1669598/data/www/unionbeginner.ru/templates/unionbeginners/index.php on line 38
выдаёт такую ошибку
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Код
Parse error: syntax error, unexpected T_STRING in /var/www/u1669598/data/www/unionbeginner.ru/templates/unionbeginners/index.php on line 38
выдаёт такую ошибку
Это мне ни о чем не говорит. Выдрано из контекста. Привидите кусок кода, куда Вы это вставляете.
*

z-17

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
я ставлю ссылку  в шаблон
Код
<a href="#">Выход</a>
вместо # - тот код
сохраняю, страницы не загружаются. выдаёт такую ошибку
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
*

z-17

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
Вот index.php
Спойлер
[свернуть]
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Тогда так:
Код: php
echo('<a href="/index.php/forum/profile">Профиль</a> | <a href="' . JRoute::_( 'index.php?option=com_users&task=logout&' . JUtility::getToken(). ' = 1' ); . '">Выход</a>');
*

z-17

  • Осваиваюсь на форуме
  • 35
  • 0 / 0
всё равно
Код
Parse error: syntax error, unexpected ';' in /var/www/u1669598/data/www/unionbeginner.ru/templates/unionbeginnersv2/index.php on line 39
*

Ghedeon

  • Новичок
  • 5
  • 0 / 0
bzzik, я правильно понял, у Вас исполняется PHP код в поле для ссылки? Просто у меня полностью аналогичный случай, но если я пытаюсь в качестве внешней ссылки назначить пункту меню PHP код, то он попросту не выполняется. В чем секрет?
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Ну если так можно выразиться, то да. Опишите ситуацию и приведите код, попробую помочь.
*

Ghedeon

  • Новичок
  • 5
  • 0 / 0
Joomla! 1.7, тема jootheme quantum. Форма авторизации идет вместе с шаблоном. После авторизации появляется кнопка выхода, но в ненужном обрамлении и в специальной форме. Задача: перенести действие этой кнопки на произвольный элемент: ссылку в статье, пункт в меню, модуль в какой-то позиции, скажем где-то в topbar... Пусть для примера это будет пункт меню "Выход". Тип пункта я так понимаю должен быть "Внешний URL". Дальнейшие действия?
« Последнее редактирование: 22.09.2011, 01:34:58 от Ghedeon »
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
*

Ghedeon

  • Новичок
  • 5
  • 0 / 0
Хорошо, а куда загоню? Если создам модуль типа custom HTML, туда загоню? Кстати пробовал, в режиме без редактора, PHP код не режется, но и не исполняется. Что бы Вы сами посоветовали?
*

Ghedeon

  • Новичок
  • 5
  • 0 / 0
Ок, сторонними костылями я заставлю работать PHP код. Теперь самое интересное — какой PHP код? ^-^
В спойлере содержимое \com_users\login\default_logout.php. Я правильно понимаю, код выхода примерно такой?
Код: php
<?php echo JRoute::_('index.php?option=com_users&task=user.logout'). JHtml::_('form.token')?>
Кажется чего-то не хватает. Еще кодирование url строки смущает.

Спойлер
[свернуть]
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Кодирование строки не обязательно. Код вероятно будет такой:
Код: php
<?php echo JRoute::_( 'index.php?option=com_users&task=user.logout&' . JUtility::getToken(). ' = 1' ); ?>
*

Ghedeon

  • Новичок
  • 5
  • 0 / 0
Все работает, Ваш код верный. Спасибо за помощь!
« Последнее редактирование: 23.09.2011, 04:37:27 от Ghedeon »
*

odlf3

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
а у меня пишет "не верный параметр" (((
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
*

Begotten

  • Захожу иногда
  • 81
  • 0 / 1
Неа. не работает. Выдает не существующую страницу. Загонял эти коды в php_module, ставил в нужную позицию. Не раюотает(((
*

Begotten

  • Захожу иногда
  • 81
  • 0 / 1
<a href="/index.php?option=com_user&task=logout&return=Lw==">Выход</a> - Работает. Тока вставлять php модулем.
*

Voronn

  • Осваиваюсь на форуме
  • 36
  • 1 / 0
  • VoronN
скачать вот отсюда сомпонентик маленький http://joomlacode.org/gf/project/com_quicklogout/frs/?action=FrsReleaseBrowse&frs_package_id=6034

и все будет в ажюре
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как переименовать кнопку read more

Автор south018

Ответов: 23
Просмотров: 12678
Последний ответ 12.10.2018, 07:22:39
от lexxbry
Убрать кнопку "быстрая покупка"

Автор RomKa111

Ответов: 7
Просмотров: 1166
Последний ответ 15.06.2018, 06:41:21
от RomKa111
Не могу войти в админку

Автор Aalexandrion

Ответов: 16
Просмотров: 4317
Последний ответ 18.07.2017, 16:46:01
от SeBun
Не могу войти в любой модуль или плагин

Автор vipex

Ответов: 2
Просмотров: 1069
Последний ответ 21.01.2017, 22:39:11
от beliyadm
Как заменить кнопку ссылкой?

Автор Aiden

Ответов: 9
Просмотров: 1294
Последний ответ 09.11.2016, 16:58:41
от Aiden