Заметки для WordPress программистов

Все хвалят WordPress, говорят, что очень удобная платформа для блогинга и других всяких замечательных приблуд, вроде досок объявлений, менеджера контактов. Вордпресс занимает около 70% рынка бесплатных CMS. И это круто! Люблю, когда бесплатный софт превосходит возможности платного в разы.

Так уж случилось, что на этой неделе мне пришлось разрабатывать плагин для WordPress. И, вы знаете, наболело. Откровенно наболело. За всю неделю, столкнулся с множеством нюансов, которые повергнут разработчика в шок, поэтому прежде чем писать плагин, прочтите это. Возможно, вы передумаете :-)

Итак, первая проблема — сверхидиотская структура документации. Я просто сходил с ума, из-за того, что не могу найти нужные мне функции или описание как вывести нужный блок в админке при написании поста. Благо, что с английским языком у меня всё в порядке, поэтому я пошёл гуглить. Результат был достингут спустя 30 минут, на каком-то буржуйском бложике, автор пишет, как это можно сделать ( ответ найден здесь).

Ещё одна проблема кодекса (так назыается документация для разработчиков) — это его неоднозначность. Например, есть две функции: get_option и get_settings. Эксперементальным путём было выяснено, что get_settings работает всегда, в отличии от первой функции. Но в кодексе про это, разумеется, нигде не сказано.

Ужасающая перелинковка документов. Я до сих пор не знаю, как я попал на страничку, в которой указывается информация о ролях и уровнях доступа. Интересным, оказывается, когда функция, по названию вроде бы как подходит тебе, но в описании к ней нет ничего!!! Вообще ничего! Приходится опять гуглить.

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

Если кому-то нужна информация по разработке плагинов для WordPress, то просмотрите мои закладки, которые я сделал во время разработки плагина.

Но не всё так плохо. Несмотря на эти минусы, легко врубаешься в систему хуков вордпреса. Очень удобно написать настройки для плагина, поскольку вордпресс сам проверяет и обновляет значения, тебе нужно их просто выводить. Конечно, досадно, что в вордпрессе не предусмотрен механизм шаблонизации админки, а то писать смесь HTML + PHP для админки — то ещё удовольствие.

Поскольку закончил работу над плагином, захотелось продолжить развиваться и написать ещё один (а может быть и несколько) плагинов. Правда, я не знаю что он должен делать :) Подскажите хорошую идею для плагина? Постораюсь реализовать и сделать его бесплатным. Пожалуйста, не предлагайте галереи и каталоги.

Картинки по теме



Рекомендую прочитать:

About arti

Php-программист со стажем в 5 лет. Люблю путешествовать и знакомиться с новыми людьми. Женат на самой красивой и лучшей девушке в мире: Дашеньке.

, , ,

  • http://bitby.net WebMast

    прежде чем писать плагин, прочтите это. Возможно, вы передумаете

    Наоборот. Даже захотелось... : )

    Большое спасибо за закладки.

    Кодекс — страшное место... Судя по моей последней встречи с ним.

    P.S. А что с картинками. Почему они все отражены по горизонтале?

    • http://wwwlab.biz Артур

      Это эксперимент. Чуть позже расскажу для чего и чем закончился.

  • http://news.uvaga.ru Jane

    За закладки спс!

    С самим вордпрессом работаю не так давно, пока нравится.

    А из плагинов — можно сделать толковый плагин статистики :) Или это мне просто не попадались удобные?

    • http://wwwlab.biz Артур

      Лучше использовать стороннюю статистику, мне например нравится стат от Li.ru. Другие предпочтут статистику от гугла. В основном, проблема плагинов статистики в том, что они знают только о самых больших поисковиках, причём буржуйских :) А также не дружат с кодировками и русскими буквами... посему лучше просто вставить счётчик и забыть.

  • http://snowblind.na.by dimedr

    А что если написать такой:

    — недокалендарь т.е. вводишь например какое то событие на определенную дату, оно висит в блоке на всех страницах (или на определенной) когда же эта дата настала и событие произошло оно переносится, например, ан страницу events где отображаются все прошедшие события :)

    думаю понятно изложил свою мысль

    • http://wwwlab.biz Артур

      Довольно просто, однако чует моя жопа моё сердце, что такое уже есть. В репозитории плагинов смотрел? Нельзя изобретать велосипед :)

      • http://belportal.info ProgHat

        Дык в целях прокачки навыков можно ;).

        • http://wwwlab.biz Артур

          дык скил в пэхапе прокачивать уже не нужно. Нужен реальный функционал. А то в ВП 3.0 уже будет возможность создавать типы материалов, поэтому плагин очень быстро утратит свою актуальность. Ибо всё можно сделать будет системно :)

          • http://belportal.info ProgHat

            Я про WP API (или как это правильно называется).

  • http://belportal.info Dashystik

    и о чем вы тут разговариваете?..))))какой-то язык инопланетян=)))

  • Poissnake

    Идея для плагина, Чтение книг в on-line формата  FB2.

    Очень бы пригодился для bookfb2.ru :)