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

ZHart

  • Захожу иногда
  • 324
  • 53 / 2
Поискав по форуму, я с удивлением для себя обнаружил, что эта тема еще не обсуждалась.
А ведь серьезная тема — в Joomla (начиная с версии 3.2) появился функционал, позволяющий хранить историю изменения статей (как в wiki) и при желании откатываться на более ранние версии.

Потенциально возможность интересная, только вот на практике (во всяком случае для меня) она вылилась проблемой.
Узнал я об этой великой возможности после того, как на одном из сайтов база данных вдруг начала раздуваться до неимоверных размеров.
Почему?
Да потому, что:
Во-первых, по умолчанию сохраняются последние 10 версий статьи, что довольно-таки немало.
Во-вторых, сами статьи в БД хранятся как положено в кириллице, а вот сохраненные версии почему-то хранятся в кодах Unicode (типа «\u0440\u0435\u043c\u043e\u043d\u0442» вместо шестибуквенного слова). Итого база распухает еще в 6-7 раз.

Я не разбирался в механизме, но если все версии контента хранятся целиком, то получаем увеличение БД в 60-70 (!) раз. Даже если данные сохраняются не полностью, распухание все равно будет очень существенным. Например, в моем случае таблица _ucm_history занимает около 95% от общего объема БД, и это при том, что сайт новый и статьи после создания почти не редактировались.

На большинстве моих сайтов версионность в принципе не нужна, и думаю, что не один я такой.
Версионность контента легко можно отключить в настройках материалов на вкладке «Форма редактирования» (Сохранять историю -> Нет).
Но вот вопрос — как корректно поудалять уже существующую сохраненную историю изменения статей?
Странно, но в настройках возможности пакетной чистки не предусмотрено (или я плохо искал), а удалять вручную версии в каждой статье — слишком долго и напоминает мартышкин труд.
Можно ли просто удалить таблицы «_ucm_base», «_ucm_content», «_ucm_history»? Или есть более корректный способ очистки?
*

b2z

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

ZHart

  • Захожу иногда
  • 324
  • 53 / 2
«По моему» — звучит как-то неуверенно :)
Пускай не удалять таблицы целиком, пускай почистить — могу ли я это сделать безболезненно, не опасаясь за стабильность работы сайта?

P.S.: Ручная очистка таблиц — странный способ обслуживания современной дружественной CMS. Также сомневаюсь, что меня одного смущает увеличение базы в 60-70 раз на пустом месте. Видимо, Joomla 3.2 пока еще слишком свежа и мало людей успели ей попользоваться или заметить эту чудесную особенность. Надеюсь, эти недостатки со временем будут устранены.
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Конечно неуверенно, потому что я не пользуюсь версионностью... Попробуй задать фопрос на forum.joomla.org.
*

ZHart

  • Захожу иногда
  • 324
  • 53 / 2
Хорошо, попробую.
А версионностью я тоже не пользуюсь. Только у меня об этом не спросили, в Joomla 3.2 она активирована по дефолту. Тоже странно кстати, могли бы по умолчанию оставить эту опцию неактивной.
*

b2z

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

noszone

  • Захожу иногда
  • 59
  • 2 / 0
  • Люблю Жумлу и ненавижу...
Все таки нашёл этот параметр. Компоненты-Метки-Настройки. Каким боком управление версиями попало в раздел Метки.
А нет, это относится к меткам, а материалы в Менеджере материалов - Настройки - Форма редактирования
« Последнее редактирование: 18.03.2014, 10:38:53 от noszone »
*

voland

  • Легенда
  • 11028
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Вот это уже хороший вопрос. Можно поднять бучу на том же org, чтобы по дефу была отключена, раз она так базу сжирает.
Не надо буч, хорошая фича именно для многих новичков.
Я еще в 2.5 через плагин юзал.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Очистить таблицы можно безболезненно, но только после отключения версионности, хотя они сами при этом очиститься должны.
Непонятно, чем именно полезна эта фишка именно новичкам.

И кстати, хорошую русскую доку по таблицам J где можно почитать?
« Последнее редактирование: 18.03.2014, 23:00:50 от AlekVolsk »
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
И кстати, хорошую русскую доку по таблицам J где можно почитать?
Вот и мне интересно... Давно ищу.
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

b2z

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

bgg87

  • Захожу иногда
  • 164
  • 2 / 0
  • Истина где-то рядом...
Очистить таблицы можно безболезненно, но только после отключения версионности, хотя они сами при этом очиститься должны.
Подскажите почему после отключения, таблица _ucm_history так и не очистилась?
Если выполнить вручную очистку, то на сколько это безопасно?
*

filars

  • Новичок
  • 1
  • 0 / 0
« Последнее редактирование: 18.07.2016, 13:50:46 от filars »
*

Sulpher

  • Живу я здесь
  • 2126
  • 402 / 16
  • Шаблоны и расширения Joomla
Очистить таблицы можно безболезненно, но только после отключения версионности, хотя они сами при этом очиститься должны.
Это проверенная информация (таблицы чистятся после отключения параметра) или все же руками нужно очищать таблицу?
*

ZHart

  • Захожу иногда
  • 324
  • 53 / 2
Так вроде проще чем через php.

Во-первых, не php, а MySQL, а во-вторых:

Странно, но в настройках возможности пакетной чистки не предусмотрено (или я плохо искал), а удалять вручную версии в каждой статье — слишком долго и напоминает мартышкин труд.
*

zahar_92

  • Захожу иногда
  • 315
  • 8 / 0
Это проверенная информация (таблицы чистятся после отключения параметра) или все же руками нужно очищать таблицу?
Сами таблицы не чистятся. После отключения функции, очистил вручную. Пока проблем не наблюдаю.
*

drpower

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
*

zahar_92

  • Захожу иногда
  • 315
  • 8 / 0
А как отключить версионность?
В менеджере материалов - > Настройки - > вкладка Форма редактирование -> Сохранять историю -> Нет
*

ChaosHead

  • Гуру
  • 5242
  • 451 / 13
Во-вторых, сами статьи в БД хранятся как положено в кириллице, а вот сохраненные версии почему-то хранятся в кодах Unicode (типа «\u0440\u0435\u043c\u043e\u043d\u0442» вместо шестибуквенного слова). Итого база распухает еще в 6-7 раз.

Фантастический тип хранения. Кроме того чищу таблицу assets: http://joomlaforum.ru/index.php/topic,330897.msg1669897.html#msg1669897
В которую пишутся права доступа к каждому материалу, даже если вы их не задаёте, они при сохранении материала пишутся туда и тормозят.
Таблицы - это оперативка.

Кроме того, сохраните любой материал и гляньте в таблицу content:
Столбец images, что там в каждой строке?
Спойлер
[свернуть]

Аналогично столбец urls, что там:
Спойлер
[свернуть]

Аналогично столбец attribs:
Спойлер
[свернуть]

Аналогично в metadata:
Спойлер
[свернуть]

На кой чёрт пустые названия настроек писать в каждый материал, если в материале нет прикреплённых картинок, нет прикреплённых url, они отключены в настройках, и так-же нет каких-то доп атрибутов? Кто придумал такой тип хранения? Столбцы уже отменили, дополнительные таблицы уже отменили? Почисти всё это и таблица content начинает весить до двух(!) раз меньше.

Очень надеюсь с кастомными полями в Joomla 3.7 не выдумают что-то в том-же духе.
« Последнее редактирование: 08.12.2016, 00:14:09 от ChaosHead »
*

LovelyHost

  • Захожу иногда
  • 161
  • 2 / 1
Слава Богу, что заметил этот беспридел по 40 мб в базе на 8 сайтах.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Фантастический тип хранения
это точно. теоретически спасло бы использование JSON_UNESCAPED_UNICODE, но он появился только в php 5.4, а J3 требования 5.3.10 минимальная. хотя могли бы и проверку сделать...
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

LovelyHost

  • Захожу иногда
  • 161
  • 2 / 1
А подскажите как автоматически, через MySQL запрос очистить _ucm_history, а то там столько информации, что вручную просто жесть удалять.
*

LovelyHost

  • Захожу иногда
  • 161
  • 2 / 1
Вроде бы так:

Код
TRUNCATE TABLE `префикс_ucm_history`;
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Нужна проф помощь в обновлении Joomla на лок.сервере osp. Можно платно

Автор Fati

Ответов: 0
Просмотров: 96
Последний ответ 16.06.2025, 16:40:04
от Fati
Помогите с БАГом в панели администратора Joomla 3

Автор akteon25

Ответов: 2
Просмотров: 1127
Последний ответ 26.02.2025, 16:41:56
от akteon25
Версии РНР и Joomla 3

Автор Ebelous

Ответов: 8
Просмотров: 2898
Последний ответ 27.01.2025, 20:38:45
от pavelrer
Trouble Upgrading from Joomla 3.8 to 3.9

Автор melissa00

Ответов: 0
Просмотров: 1729
Последний ответ 26.07.2024, 10:03:51
от melissa00
SP polls в Joomla 3.8.2

Автор wawont

Ответов: 2
Просмотров: 3397
Последний ответ 22.02.2024, 21:03:15
от Zegeberg