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

irina_kiseleva_spb

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Здравствуйте!
Есть пункт меню, при нажатии на который открывается страница с определённой информацией.
Хотим в текст материала включить эту информацию.
Максимум, до чего мы додумались, и что получилось сделать – это вставить в текст материала пункт меню, при нажатии на который открывается та самая страница с информацией. Но это не то, что нам нужно. Нам нужно, чтобы информация отображалась прямо в тексте материала.
Скажите, пожалуйста, как это можно сделать?
*

KKAAZZOO

  • Живу я здесь
  • 2288
  • 118 / 9
Скопируйте нужную информацию со страницы открывающейся на пункте меню и вставьте ее в текст материала.
*

irina_kiseleva_spb

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
KKAAZZOO, спасибо, что откликнулись.
Вариант, который Вы предлагаете нам не подходит, т.к. данные, которые выводятся на открывающейся странице - не статичны.

Может быть, Вы знаете, что можно сделать в этом случае?
*

Flopik

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Ну если не статичны вставьте код с того материала.
*

KKAAZZOO

  • Живу я здесь
  • 2288
  • 118 / 9
У Joomla есть модуль Wrapper, возможно подойдет вам. Настройте и вставьте его в материал.
*

irina_kiseleva_spb

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Flopik, вариант, который Вы предлагаете - самый подходящий для нас. Мы и сами думали о нём. Вся загвоздка заключается в том, что мы не знаем, в каком файле и папке компонента находится код, который выводит данные на страницу. Т.е. мы не знаем, где и что именно нам искать.
Может быть, Вы сможете нам подсказать?

Вот папки и файлы в корне компонента: 

Папки:
assets
controllers
helpers
models
views

Файлы:
component.php
controller.php
router.php

*

irina_kiseleva_spb

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
KKAAZZOO, мы нашли модуль Обёртка (Wrapper) в менеджере расширений, но он некликабельный (в модулях и плагинах сайтах он отсутствует) Непонятно, каким образом его настраивать и вставлять в тело материала. Скрин найденного модуля прикрепили.
Подскажите, пожалуйста, что мы делаем не так.

*

KKAAZZOO

  • Живу я здесь
  • 2288
  • 118 / 9
Модули создаются в менеджере модулей, а не менеджере расширений. В материал вставляйте с помощью штатного плагина  "Контент - Загрузка модулей"
*

irina_kiseleva_spb

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
KKAAZZOO, спасибо за пояснение.

Описываем наши действия для тех, кого интересует подобный вопрос:
1.  Создаём новый модуль: Расширения - Менеджер модулей - Создать модуль
2. Выбираем тип модуля: Обёртка (Wrapper)
3. В поле "URL" вставляем ссылку на страницу, которую вы хотите отобразить в теле материала.
4. В поле "Позиция" вводим название позиции (которое точно не находится в списке). Например, mod_modul.
5. Остальные настройки - по желанию. Жмём сохранить.
6. Открываем материал, в который нужно добавить данные, и в нужном месте вставляем следующий текст: {loadposition mod_modul}
7. Сохраняем материал

Таким образом в теле материала появляется окно, в котором отображаются данные другой страницы.



« Последнее редактирование: 20.04.2017, 23:55:53 от irina_kiseleva_spb »
*

irina_kiseleva_spb

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
KKAAZZOO, скажите, пожалуйста, есть ли какой-то способ настроить это модальное окно таким образом, чтобы:

1. В окне отображались только пользовательские данные, без шапки и подвала страницы.
2. Сделать высоту окна не статичной (с полосой прокрутки), а адаптивной, подстраивающейся под количество выводимой информации.
*

KKAAZZOO

  • Живу я здесь
  • 2288
  • 118 / 9
Увы, но все возможные настройки указаны в настройках модуля. Возможно на JED есть более продвинутый аналог данного модуля в котором реализован нужный вам функционал. Также можете заказать расширение с нужным функционалом в коммерческом разделе форума.
*

Serg_

  • Захожу иногда
  • 168
  • 24 / 1
  • Skype: smile_bot (Запорожье)
Если правильно понял, то в тексте одного материала(1) вам надо вывести другой материал(2).
Выводите в модуле текст материала(2) и модуль выводите в позиции hidden2, например.
А в материале(1) вставляете {loadposition hidden2}
*

irina_kiseleva_spb

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
KKAAZZOO, спасибо за подсказку. На JED мы нашли вот этот плагин: https://extensions.joomla.org/extensions/extension/core-enhancements/coding-a-scripts-integration/include-component/
Ещё вот этот: https://www.regularlabs.com/extensions/componentsanywhere
НО: они работают частично.
Изменяющаяся информация на на нужной нам странице отображается следующим образом:

Альбом 1
Альбом 2
Альбом 3

При нажатии на "Альбом 1" под ним появляется кликабельный список с материалами, которые в нём содержатся:

Альбом 1
материал 1
материал 2
материал 3
Альбом 2
Альбом 3

При повторном нажатии на "Альбом 1" список с материалами скрывается:

Альбом 1
Альбом 2
Альбом 3

Так вот, мы хотим в тело нового материала вставить данные со страницы. 2 вышеописанных плагина позволяют это сделать, но при этом теряется важный момент: при повторном нажатии на "Альбом 1" ничего не происходит, список с материалами не скрывается. Функциональность теряется, нас это не устраивает.

Скажите, пожалуйста, Вы знаете, что можно сделать, чтобы данные со страницы без потери функциональности (т.е. сохранялась кликабельность) отображались в теле материала?
*

irina_kiseleva_spb

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Serg_, Вы неправильно поняли. Прочитайте, пожалуйста, более внимательно наши пояснения выше.
*

Serg_

  • Захожу иногда
  • 168
  • 24 / 1
  • Skype: smile_bot (Запорожье)
Ну вот набросал пример с использованием двух бесплатных плагинов
http://test.antipov.in.ua/index.php/primer-regularlabs-com
Если не хотите добавлять вручную материалы, то можно модулем вывести список всех материалов для каждой подкатегории (Альбом 1, Абльбом 2, ...)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

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

Автор goga_pgasovav

Ответов: 2
Просмотров: 1302
Последний ответ 23.12.2024, 22:31:21
от goga_pgasovav
pptx в теле материала сайта

Автор VIK4

Ответов: 0
Просмотров: 1054
Последний ответ 24.10.2024, 13:04:04
от VIK4
После обновления до Joomla 3.7 в админке в меню "Компоненты" пропали пункты

Автор lolitma3

Ответов: 39
Просмотров: 13145
Последний ответ 15.06.2023, 11:55:16
от Victor333
При переносе второго сайта на хостинг открывается страница первого сайта

Автор rezchik

Ответов: 13
Просмотров: 1379
Последний ответ 15.03.2023, 18:38:03
от rezchik
Вывод поля поиска первым пунктом в меню

Автор Mick_20

Ответов: 3
Просмотров: 1010
Последний ответ 03.02.2023, 13:02:46
от Mick_20