Модератор
Юрій
(@yube)
Интересно, что использование «системного» gettext в моем эксперименте с 2.8 дало точно такой же выигрыш — 3 метра.
Atrax
(@atrax)
Ethical engineer
Метод php- словаря еще Макс внедрял в wordpress, до того как «удалился от дел» 🙂 если уж гнаться за байтами экономии, то нужна именно жесткая замена. Чтобы каждый раз не читать полный словарь.
Подумал, что это оптимальный баланс между экономией и трудозатратами 🙂 Объём полного словаря в памяти на текущий момент — 600 КБ. Сделал для эксперимента «облегчённый» файл (без каталога wp-admin
и редактора) — получилось 100 КБ.
SergeyBiryukov, на 2.7.1 плагин не запустился 🙁 При активации пишет:
Warning: Invalid argument supplied for foreach() in Z:\home\newblog\www\wp-content\plugins\pure-php-localization\pure-php-localization.php on line 19
В самом блоге
Warning: Missing argument 5 for php_l10n_ngettext() in Z:\home\newblog\www\wp-content\plugins\pure-php-localization\strings-ru_RU.php on line 26
YuBe, попробовал Ваш способ, все отлично, экономия 2.5мб. только к сожалению отключилась локализация плагинов, может подскажете как подключить локализацию одного из плагинов на каком нибудь примере?!
Заранее спасибо!
Atrax
(@atrax)
Ethical engineer
Requires WordPress Version: 2.9 or higher
Вам это ни о чем не говорит?
Модератор
Юрій
(@yube)
Извините, не подскажу. Готового решения нет. А разбираться с этим делом мне очень не хочется. По одной простой причине: я считаю, что выигрыш от этого мизерный. Если проект большой и серьезный, то лучше сразу брать большой и серьезный хостинг. А для мелочевки (типа моего блога:)), вполне достаточно старых экономных версий, скажем, 2.3.3, а то и 2.0.11.
Вам это ни о чем не говорит?
Говорит! По этому и написал что у меня версия 2.7.1, может автору плагина будет не сложно и он сможет переделать плагин чтобы он поддерживал и предыдущие версии!
Добавил обработку прежних типов данных. Теперь поддерживаются все версии WordPress, начиная с 2.1 🙂 Попробуйте тестовый архив:
http://downloads.wordpress.org/plugin/pure-php-localization.zip
SergeyBiryukov, спасибо что сделали поддержку старых версий, но у меня к сожалению не заработало 🙁 Пишет:
Fatal error: Call to a member function seekto() on a non-object in Z:\home\newblog\www\wp-includes\gettext.php on line 154
При этом весь блог прекращает работать (в том числе админка) =( Лечится только удалением плагина.
Сейчас попробывал на вновь установленном WordPress’e без плагинов, все ок… из-за чего такое может быть? Заранее спасибо!
Версия WordPress 2.7.1
Сообщите, пожалуйста, список установленных плагинов.
Обновил архив по ссылке — попробуйте ещё раз.
Обновил архив по ссылке — попробуйте ещё раз.
Заработало 🙂
Только почему то на работающем блоге расход памяти упал с 13.75MB до 13.2MB, а на пустом демо блоге с 10.42MB до 9.36MB…..
На версиях до 2.9 экономия меньше — в объектах было не так много полей.
Обновил архив — теперь в словарь добавляются также переводы активных плагинов и текущей темы оформления (если она использует gettext).
Atrax
(@atrax)
Ethical engineer
«активных» в смысле «часто используемых»?