Новости Joomla

Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0

Метод registerListeners() в CMSPlugin в плагинах  планируется удалить в Joomla 7.0

👩‍💻 Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0.Этот метод регистрирует устаревшие слушатели событий в диспетчере, имитируя работу плагинов Joomla! 3.x и ниже для Joomla 4+. По умолчанию этот метод ищет все общедоступные методы, название которых начинается с on. Он регистрирует лямбда-функции (замыкания), которые пытаются преобразовать аргументы отправленного события в аргументы вызова метода и вызвать ваш метод on<Что-то>. Результат передаётся обратно событию в его аргумент result.Теперь этот слой совместимости с устаревшей Joomla 3 помечен к удалению в Joomla 7.0, которая должна выйти осенью 2027 года. Это означает, что те уникальные расширения от Joomla 2.5 / Joomla 3, которые ещё работали на Joomla 4-6 скорее всего окончательно перестанут работать на Joomla 7. Предполагается, что активные разработчики планомерно и постепенно избавляются от технического долга и обновляют свои расширения. @joomlafeed#joomla #разработка #php

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

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Всем кривет!
Немного углубился в вопрос мультисайтовости на Joomla. Из готовых есть платные какие-то приблуды, монструозный Seblod и всякие извращения.
С виртуальными поддоменами все понятно, но вот в варианте с папками по названиям городов есть небольшие грабли.

Итак, мы можем насоздавать разных языков контента, чтобы разнести информацию по городам, т.е. 1 язык = 1 город.
Процесс понятен, но хотелось бы по минимуму плодить файлов локализации.
Допустим, чтобы работала транслитерация для всех городов, надо в папку каждого языка класть переименованный файл ru-RU.localise.php и менять там название класса.

Так вот, вопрос знатокам PHP:
Как можно цеплять 1 файл на все языки?
т.е. если я создал город Тюмень, то что мне прописать в файле tum-GG.localise.php, чтобы прицепился и сработал родной русскоязычный класс abstract class Ru_RULocalise?
т.е. если будет 20 городов, то хотелось бы в случае обновления локализации менять 1 файлик, а не 20.
*

sivers

  • Живу я здесь
  • 2597
  • 360 / 0
Как можно цеплять 1 файл на все языки?
Код
<?php
require_once(__DIR__ .'/../ru-RU/ru-RU.localise.php');
abstract class Tum_TUMLocalise extends Ru_RULocalise {
}
Но объясните поподробнее - для чего это все? Что будет отличаться на городах?
Просто мне тоже приходилось делать деление по городам (и субдоменами, и первой секцией в адресном пути как язык), но о языковых файлах как-то даже не думал...
« Последнее редактирование: 22.03.2019, 09:05:29 от sivers »
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Конкретно в этом случае смысл - в удобстве.
Если выбрать язык-город до сохранения нового материала, то алиас создастся в виде цифр.
Можно, конечно, сначала сохранить под дефолтным языком, а потом выбрать язык и снова сохранить, но это уже лишнее телодвижение.
*

sivers

  • Живу я здесь
  • 2597
  • 360 / 0
Интересная идея, надо будет ее подумать. Сейчас у меня города и все, что с ними связано, хранится в БД, при формировании ссылки первая секция /catalog/ подменяется на алиас города, а при переходе по ссылке делаю обратную подмену. В варианте с языками можно обойтись без подмен...
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Так в том и дело, что мультиязычность - это готовое решение для деление инфы по городам, если структура подсайтов одинаковая.
Можно не создавать всякие доп. меню для каждого города. Получаем универсальную информацию + отдельные вкрапления из модулей или статей для отдельных городов.
Единственное, что надо чуть переделать модуль выбора городов - но там 3 строки - комментируем одно условие, чтобы список формировался даже если нет меню для города, а ссылку меняем на алиас города. Все. Дальше просто из админки накидываем разных новостей для каждого города в один и тот же раздел, вперемешку с общей информацией, а в метатеги и заголовки вставляем {GOROD} и системным плагином меняем на название текущего города.
Т.е. для примера, делаем главным пунктом меню Избранные, для каждого города создаем статью и присваиваем галочку избранности - и вот у нас разная главная страница.
Далее модуль новостей поздравляет всех с 8 марта, а профильные новости уже у каждого города свои, т.к. мы создали по 1 новости для каждого города.
*

sivers

  • Живу я здесь
  • 2597
  • 360 / 0
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Плагин локализации для редактора (для бэкэнда)

Автор admincheg

Ответов: 18
Просмотров: 2678
Последний ответ 21.05.2019, 22:00:40
от admincheg
[РЕШЕНО]Нестандартный переключатель языков Joomla 3.9.4

Автор Шмайсер

Ответов: 1
Просмотров: 2245
Последний ответ 30.03.2019, 13:00:12
от Шмайсер
Программа для локализации?

Автор romagromov

Ответов: 0
Просмотров: 1511
Последний ответ 26.07.2018, 14:15:55
от romagromov
Неправильный getPluralSuffixes в русской локализации

Автор dmitry_stas

Ответов: 0
Просмотров: 1754
Последний ответ 10.04.2018, 10:28:10
от dmitry_stas
Моментальная упаковка ваших ini файлов локализации

Автор JLang

Ответов: 0
Просмотров: 1496
Последний ответ 06.07.2017, 23:30:06
от JLang