Опыты чайника с экстами

Обсуждение новой системы расширения функциональности phpBB 4.0-dev, разработки новых расширений.
Алг
Сообщения: 645
Зарегистрирован: 18 фев 2014, 17:28

Опыты чайника с экстами

Сообщение Алг »

Это очень странно, потому как между 25 и 26 промежуток небольшой. (оффтоп, а вот Хром 34 и хром 37 создали мне много проблем)
Но я пока вопрос с адресами решила, хоть и не так элегантно. Но работает...
Зато накопились вопросы по языкознанию и языковедению. Есть у меня одно расширение, в котором я не могу нормально подхватить язык. Русские буквы преврашаются в кракозябры. В то время, как в других моих же расширениях, не говоря уж о всех остальных этот процесс проходит нормально.
Начала смотреть примеры расширений.
Вопрос первый:
в некоторых экстах язык подхватывается в событии "user_setup"

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

		$lang_set_ext = $event['lang_set_ext'];
		$lang_set_ext[] = array(
			'ext_name' => 'tatiana5/quickreply',
			'lang_set' => 'quickreply',
		);
		$event['lang_set_ext'] = $lang_set_ext;
в других же в произвольном месте через команду

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

$this->user->add_lang_ext('rxu/PostsMerging', 'posts_merging');
Я, как правило, использую второй вариант. Но в связи с кракозябрами пробовала и первый без такого же успеха. Есть ли какая разница между этими способами? влияет на что-то? Или они равносильны

Вопрос 2.
Вопрос по стуктуре экста. Просматривая эксты спасибок и эксты корифеев с оффа обращаю внимание, что в листенере почти нет кода, зато формируется директорий "core", в который вставляется пхп-файл с несколькими функциями. Почему предпочитают эти функции писать в отдельном файле, когда их можно написать в том же листенере, хоть private, хоть public. Зачем такое усложнение?

Ну и вопрос 3, чем может быть вызвано появление кракозябриков... только в одном месте, в одном эксте, в одном блоке, что посоветуете проверить?

Аватара пользователя
rxu
Сообщения: 1125
Зарегистрирован: 21 янв 2014, 21:20
Откуда: Krasnoyarsk
Github repo: https://github.com/rxu
Контактная информация:

Опыты чайника с экстами

Сообщение rxu »

Алг писал(а):QR_BBPOST Есть ли какая разница между этими способами? влияет на что-то? Или они равносильны
Ни на что не влияет.
В первом способе языковой файл подхватывается на каждой странице, независимо от того, нужен он или нет.
Во втором способе - только там, где он необходим.
Алг писал(а):QR_BBPOST Русские буквы преврашаются в кракозябры.
Надо проверить кодировку файлов - UTF-8 without BOM и окончания строк в стиле Unix.
Алг писал(а):QR_BBPOST Почему предпочитают эти функции писать в отдельном файле, когда их можно написать в том же листенере, хоть private, хоть public. Зачем такое усложнение?
На самом деле, это упрощение. helper является служебным файлом, а код в слушателе выглядит простым и понятным. Чисто для удобства, и местами - для унификации. Кроме того, сервис хелпера можно использовать в аддонах (как в спасибках). Других причин нет.
Алг писал(а):QR_BBPOST чем может быть вызвано появление кракозябриков
См. выше ;)

Алг
Сообщения: 645
Зарегистрирован: 18 фев 2014, 17:28

Опыты чайника с экстами

Сообщение Алг »

rxu писал(а):QR_BBPOST Надо проверить кодировку файлов - UTF-8 without BOM и окончания строк в стиле Unix.
проверила в первую очередь. Все, как в других расширениях. Что ещё бы проверить?

Аватара пользователя
rxu
Сообщения: 1125
Зарегистрирован: 21 янв 2014, 21:20
Откуда: Krasnoyarsk
Github repo: https://github.com/rxu
Контактная информация:

Опыты чайника с экстами

Сообщение rxu »

Ну, тогда всё по порядку отсюда http://www.phpbbguru.net/community/topic16555.html

Отправлено спустя 1 час 58 минут 55 секунд:
В ядре.

Алг
Сообщения: 645
Зарегистрирован: 18 фев 2014, 17:28

Опыты чайника с экстами

Сообщение Алг »

rxu писал(а):QR_BBPOST Ну, тогда всё по порядку отсюда
volset писал(а):Если не помогает, то вместо первого попробовать добавить в .htaccess строку
КОД: ВЫДЕЛИТЬ ВСЁ
AddDefaultCharset UTF-8
это было моим вторым шагом. :)
Рационального объяснения феномену пока не нахожу

Аватара пользователя
rxu
Сообщения: 1125
Зарегистрирован: 21 янв 2014, 21:20
Откуда: Krasnoyarsk
Github repo: https://github.com/rxu
Контактная информация:

Опыты чайника с экстами

Сообщение rxu »

Теперь (начиная с 3.1.2) вместо

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

<!-- INCLUDECSS ../theme/thanks.css -->
можно использовать

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

<!-- INCLUDECSS @gfksx_thanksforposts/thanks.css -->

Алг
Сообщения: 645
Зарегистрирован: 18 фев 2014, 17:28

Опыты чайника с экстами

Сообщение Алг »

rxu писал(а):QR_BBPOSTТеперь ... начиная с 3.1.2...можно использовать...
это воспоминания о будущем?
Я справилась... комбинацией метода починки автобуса( выйдем и зайдём заново) и метода "до основанья, а затем". Пришлось убить экст, построить новый и аккуратно переписать тот же самый код. Ни одной ошибки при этом не обнаружила, но текст подхватывает. Кстати, я неправильно сказала, текст превращался не в кракозябры, а в знаки вопроса

Аватара пользователя
владимир1983
Сообщения: 164
Зарегистрирован: 21 янв 2014, 21:44
Контактная информация:

Опыты чайника с экстами

Сообщение владимир1983 »

Алг писал(а):QR_BBPOST а в знаки вопроса
А в бд эта информация которая выводится знаками вопроса пишется? А какое сравнение кодировки стоит в бд?

Алг
Сообщения: 645
Зарегистрирован: 18 фев 2014, 17:28

Опыты чайника с экстами

Сообщение Алг »

нет никакой связи с БД. Это тексты из языкового файла

Аватара пользователя
владимир1983
Сообщения: 164
Зарегистрирован: 21 янв 2014, 21:44
Контактная информация:

Опыты чайника с экстами

Сообщение владимир1983 »

А проблему нельзя в живую уже посмотреть?

Ответить