Внимание!
Не все расширения для phpBB 3.2 совместимы с phpBB 3.3, главным образом из-за неверного синтаксиса в определениях сервисов (отсутствия обрамляющих кавычек - '...').
Перед обновлением необходимо убедиться в совместимости всех расширений.
Рекомендуется предварительно тестировать обновление на копии конференции (локально или на сервере).

Расширения - это просто!

Форум для авторов расширений для phpBB. Здесь можно попросить помощи в разработке у коллег.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
im0
phpBB 1.0.0
Сообщения: 4
Стаж: 4 года 7 месяцев
Поблагодарили: 2 раза

Re: Расширения - это просто!

Сообщение im0 »

Кто-нить может подсказать почему не выполняется миграция при включении расширения через phpbbcli?

Код: Выделить всё

php bin/phpbbcli.php -v --safe-mode extension:enable tatiana5/highlightfirstpost 
проверяем

Код: Выделить всё

php bin/phpbbcli.php -v --safe-mode config:get highlightfirstpost_version
[ERROR] Параметр конфигурации highlightfirstpost_version не существует
Но если включать через админку то всё ок

Код: Выделить всё

php bin/phpbbcli.php -v --safe-mode config:get highlightfirstpost_version
0.0.1
PS. Пока набирал сюда пример — разобрался: мешает --safe-mode (в безопасном режиме (без расширений),
хотя само расширение при этом включается.
Andex
phpBB 1.4.1
Сообщения: 47
Стаж: 14 лет 4 месяца
Благодарил (а): 5 раз
Поблагодарили: 5 раз

Re: Расширения - это просто!

Сообщение Andex »

Обратил внимание, что в 3.2 и 3.3 для доступа к языковым переменным начали использовать конструкцию

Код: Выделить всё

$language->lang('LANG_KEY');
(\phpbb\language\language)

раньше в 3.1 обычно было что-то вроде

Код: Выделить всё

$user->lang['LANG_KEY']
(из \phpbb\user)

Работают, как я вижу, обе конструкции.
В чем суть нововведения? Сэкономить ресурсов, там где не надо получать данные пользователя, а просто необходим доступ к языковым переменным?
Имеет ли смысл переписывать данный код в своих расширениях?
Или может есть какие-то нюансы, о которых я не догадываюсь?
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 15208
Стаж: 14 лет 4 месяца
Откуда: Красноярск
Благодарил (а): 393 раза
Поблагодарили: 1785 раз

Re: Расширения - это просто!

Сообщение rxu »

Andex писал(а): 16.08.2020 21:33 Имеет ли смысл переписывать данный код в своих расширениях?
Имеет с прицелом на 4.0. Там массив $user->lang[] должен быть ликвидирован.
Изображение
Andex
phpBB 1.4.1
Сообщения: 47
Стаж: 14 лет 4 месяца
Благодарил (а): 5 раз
Поблагодарили: 5 раз

Re: Расширения - это просто!

Сообщение Andex »

Кстати говоря, нашел ошибку в доках

https://area51.phpbb.com/docs/dev/3.3.x ... -extension
To load a file from an extension you need to use phpbb\language\language::add_lang() which takes the vendor + extension name as first argument and the array of language files as a second argument.

На самом деле последовательность аргументов наоборот описанное же выше было применимо к user->add_kang_ext()

И ниже они в кач-ве примера приводят правильный код

Код: Выделить всё

$language->add_lang('demo', 'acme/demo');
// or
$language->add_lang(['demo', 'demo2'], 'acme/demo');
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 15208
Стаж: 14 лет 4 месяца
Откуда: Красноярск
Благодарил (а): 393 раза
Поблагодарили: 1785 раз

Re: Расширения - это просто!

Сообщение rxu »

Изображение

Вернуться в «Для авторов»