WordPress глазами друпаллера, часть 2

Локализация

ВордПресс использует GNU Gettext для локализации интерфейса. Локализация включается в файле wp-config.php выбором соответствующего языка:

define ('WPLANG', 'ru_RU');

Далее движок ищет файлы ru_RU.po и ru_RU.mo в папках темы и в папке с каждым плагином.

* en_US — Английский США
* en_UK — Английский Великобритания
* fr_FR — французский
* ru_RU — русский

Для плагинов — pluginname-ru_RU.po

Эти файлы создаются редактором poEdit, все стандартно и знакомо.

Существует 3 функции, которые необходимо использовать в темах и плагинах для перевода:

* __($text, $domain) — (аналог друпаловского t()) возвращает переведенный текст. $domain - идентификатор для которого должен быть получен текст, по умолчанию 'default'. Использовать не обязательно (заполняем названием темы или названием модуля).
* _e($text , $domain) — выводит переведенный текст (то же самое: print __($text);)
* __ngettext($single, $plural, $number, $domain) — (аналог друпаловского format_plural()) ищет нужную версию перевода для числовой фразы (например: 1 комментарий, 2 комментария, 5 комментариев).

Шорткоды

Начиная с версии WordPress 2.5 появилось такое слово в обиходе разработчиков под эту систему, параллель с Друпалом провести трудно, это что-то вроде смеси снипеттов и препроцесс-обработчиков. Приведу пример.

Допустим, нам нужно оставить сообщение которое будет видеть определенная группа пользователей — администраторы. Открывает файл functions.php и вставляем следующий код:

add_shortcode('note', 'sc_note');

function sc_note($atts, $content = null) {
if (current_user_can('publish_posts'))
return ''. $content. '';
return '';
}

первой строкой мы регистрируем наш шорткод в системе, далее описываем функцию которая будет обрабатываться и возвращать необходимые данные.

Теперь, в нужном месте записи пишем [note]Эту запись увидят только администраторы[/note] и, как написано в записи, текст будет доступен только администрации, а для остальных групп функция вернет пустую строку.

Таким способом можно выводить что угодно — статистику сайта, полезные ссылки, перечень подписчиков и прочее.
Плагины (модули)

Не буду объяснять что это такое и зачем и так ясно — для расширения функционала блога. В стандартной поставке присутствует только плагин Akismet (аналог друпаловского Mollom). Единственный недостаток - необходимо получить WordPress.com API key, после чего все комментарии будут обрабатываться этой службой и спама станет намного меньше в вашем блоге.

Все остальное не очень отличается от друпала. Скачиваем, устанавливаем, используем.
Крон

Многие вордпрессовсовцы удивятся, но крон есть! Cайт может работать и без запуска крон-скрипта, проблемы начнутся если делать запланированные публикации.

До версии 2.8.2 запуск крона необходимо было делать с хешем защитного кода:

http://my-site.com/wp-cron.php?check=46cbe1674da1d2888104482d6ed4f87f
46cbe1674da1d2888104482d6ed4f87f

- хеш числа 187425, по умолчанию.

Это была защита от DoS-атак, тепер ее убрали и запускается крон без параметров, например
wget http://my-site.com/wp-cron.php -O /dev/null 2> /dev/null

Кто захочет копнуть глубже, то есть хуки для крона и можно вешать обработку своих задач на крон.
Соединим вместе WordPress и Drupal

Рентабельно содержать Друпал и ВордПресс в рамках одного проекта, только если:

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

Допустим, вам все-таки нужно иметь две системы в одном проекте, с общим дизайном. Порядок действий в этом случае:

* Начать делать сайт стоит однозначно с Друпала.
* Когда все будет готово, вы должны перенести друпаловскую тему на вордпресс.
* Опционально: Чтобы избежать головной боли при изменении стилей на обоих системах, можно включит в друпаловскую тему стили прямо из Друпаловского сайта.
* Опционально: Если ВордПресс и Друпал находятся на однолм сервере, можно еще туже их связать, включая куски шаблонов из друпалоской темы в вордпрессовскую (но здесь уже возможны проблемы поддержки проекта по прошествии некоторого времени).

Общее впечатление от WordPress

* С виду работает шустрее Друпала, но на траффике с производительностью будут те же проблемы, если не включать плагины кеширования.
* Создание шаблона не вызывает трудностей, настройка сайта происходит гладко и беспроблемно.
* Преимущество этой системы в простоте использования, но некоторые вещи, на мой взгляд, упрощены излишне.
* Не хватает возможности правки перевода или замены текста в локализации, необходимо ставить отдельные плагины.
* Большое количество файлов в корневой директории.
* Неудобное перемещение на другой домен ил ив другую папку, необходимо вручную править дамп базы данных.
* Неудобный апдейт системы. Необходимо заменить все файлы, которые вы не правили.
* Тема которую вы создали или темы которые скачаны отдельно лежат в общей папке с темами которые идут в комплекте, аналогично и плагины.
* Система создана для блога или сайта-визитки и использовать для более крупного проекта вызовет ряд сложностей как при разработки, так и в дальнейшем администрировании сайта.

Коментарів:

1

Коментувати

Увійдіть або зареєструйтесь, щоб додати коментар

Коментарі

* Система создана для блога или сайта-визитки и использовать для более крупного проекта вызовет ряд сложностей как при разработки, так и в дальнейшем администрировании сайта.
С чего такие выводы?