Как написать плагин в WordPress

*

Для повышения своего рейтинга, то есть, для достижения мечты истинного СЕОниста, существует немало рецептов. Сегодня подвернулся еще один, абсолютно тупой и абсолютно надежный.

Итак, пишем СЕО-выигрышный заголовок, например "Как написать плагин в WordPress". У авторов было "Как написать солидный и стабильный плагин в WordPress", но я решил немного поскромничать.

Далее, пишем абсолютно пустой текст в худших традициях конференций за большие бабки, но ни о чем. Конспективно, что-то типа "Хороший плагин должен быть (а) надежным, (б) нужным и (в) красивым, потому что только при выполнении этих трех условий он может называться хорошим плагином." В более развернутом виде получается следующее:

Технический персонал b5media (ссылка на сайт) провел сегодня обсуждение о том, какие критерии мы используем, рассматривая плагины WordPress на предмет возможного включения в один из наших сайтов или во всю сеть. В результате получился список что нужно и чего не нужно делать, который мог бы оказаться полезным для авторов плагинов. Этот список не сделает вам плагин, но он поможет сделать ваш плагин надежным и стабильным.

Не пренебрегайте безопасностью

Плагины WordPress обладают огромной мощью, в чем и состоит благословение WordPress (это делает его необыкновенно гибким), но это же может стать и проклятием WordPress, если код пишется без постоянной оглядки на безопасность. Если вы не можете похвастаться близким знакомством с такими понятиями как "CSRF", "метод prepare()" (защита от SQL-инъекции), "XSS", пора проделать некоторую исследовательскую работу в этом направлении. Когда кто-то ставит у себя ваш плагин, он потенциально вверяет безопасность своего сайта в ваши руки. Встаньт е навстречу опасности.

Пользуйтесь системой разграничения прав (ролей)

WordPress управляет системой разграничения прав администраторов. Проверьте, поддерживает ли ваш плагин соответствующие механизмы. Если то, что делает ваш плагин, находится в сфере полномочий админа, его необходимо протестировать в механизме manage_options. Если это - что-то, связанное с уронвем полномочий автора, стоит использовать publish_post. Не нужно тестировать сам механизм ролей, потому что роли являются только контейнерами для различных функций, поэтому вы не можете быть уверены, что функционал "автора" на одном блоге совпадает с его функционалом на другом.

Используйте передовые функции API

WordPress содержит огромное количество кода, оставшегося от предыдущих версий и функций, вышедших из употребления. Мы стараемся не трогать без необходимости весь этот хлам, чтобы не нарушить совместимость со старыми функциями API. Если ваш плагин использует эти устраевшие функции, я сразу скажу, что вы отстали от жизни и от последних разработок WordPress. А из этого следует, что у вашего плагина высока вероятность отказа после появления новых версий WordPress, и он предполагает определенную неряшливость, что может привести к проблемам безопасности.

Помните об эффективности

Число запросов к базе данных, которые производит ваш плагин, может влиять на его эффективность. Нам не важно, насколько ваш плагин крут. Если он требует десяти запросов к MySQL на каждой странице, он никудышный. Число запросов должно быть минимизировано. Необходимо уделить внимание и другим моментам, свыязанным с эффективностью, например, вашему PHP-коду.

Используйте существующие структуры данных WordPress, если это возможно

Не стоит создавать своих собственных таблиц в базе, если только вы не уверены абсолютно, что ваши задачи невозможно решить при помощи существующих системных данных WordPress.

Правда, здорово получилось? Открою секрет - мне так слабо. Я просто перевел на русский пост с весьма высоким рейтингом, написанный одним из "гуру" вордпрессовских разработчиков Марком Джейкитом. Честно, не знаю, что требуется для того, чтобы выдавать на гора такое умнообразное ничегонеписание: природная наглость, полное пренебрежение к читающему тебя "планктону", наличие особого дара?

Впрочем, СЕОнист не был бы СЕОнистом, если бы позабыл достойно завершить пост:

Попозже я напишу обо всех этих вещах более подробно.

Так что, ждите. Он еще и напишет.

Ну, что же, я полагаю, в результате всего этого писательства у меня получился впоолне СЕО-достойный пост, который со временем займет место среди других шедевров жанра в духе "100 способов попасть на верхние строчки Яндекса", "Я зарабатываю на блоге 10 000 долларов в день, могу научить" и им подобных.

Новые комментарии