Подтвердить что ты не робот

Разработка плагина WordPress с использованием OOP

Я новичок в разработке плагинов. Поэтому, пожалуйста, поправьте меня, где бы я ни ошибался.

У меня есть веб-сайт, которому нужен плагин для игроков со следующими потребностями: -

  • Административная форма для регистрации игрока с некоторыми сведениями о них.
  • Страница листинга, на которой будут показаны все зарегистрированные игроки.
  • Зарегистрированные игроки могут быть удалены и сопоставлены друг с другом.
  • Отображение некоторых зарегистрированных игроков (10 случайных игроков) в теме WordPress в интерфейсе.

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

У меня теперь есть две головные боли при завершении разработки этого плагина: -

  • Разработайте этот плагин в формате OOP для поддержки будущих версий WordPress.
  • Заполните другие требования этого плагина.

Как продолжить следующее (даже при небольшом обмене знаниями)?

  • Создание плагина WordPress с нуля с использованием способа OOP.
  • Вызов веб-формы (например, для регистрации игрока) с использованием ООП.
  • Отправка всей информации этого игрока в базу данных с помощью ООП.
  • Отображение страницы списка (например, для зарегистрированных игроков и их позиционирования) с использованием ООП.
  • Отображение некоторых игроков в интерфейсе темы WordPress, используя либо теги шаблонов, либо напрямую с помощью плагина.

Я искал Google, пытался найти в Интернете какую-то информацию об этом, но я ничего не сделал с ООП.

EDIT: - Это будет очень полезно и приятно для всех нас (новых для разработки плагина WordPress OOP), чтобы иметь фрагмент кода, подчеркивающий его использование. Если возможно, вы также можете указать ссылки на статьи, которые будут правильно описывать, как писать такие плагины OOP.

Статьи, такие как " gulbrandr", были полезны, и я также хотел бы поблагодарить " kovshenin" за совместное использование/упоминание ссылок некоторых плагинов OOP; но это будет очень хорошо, если можно предоставить дополнительные статьи или фрагменты кода, описывающие правильные шаги по разработке плагинов OOP.

4b9b3361

Ответ 1

Я не гуру, но уже несколько лет я работаю с WordPress и имею несколько плагинов за моей спиной. Ваша первая ошибка, которую я могу указать, -

вместе с созданием таблицы базы данных

Это неправильно. Вы не создаете таблицы при работе с WordPress, схема по умолчанию достаточно гибкая, чтобы соответствовать всем, что вы имеете в виду. Даже сложные плагины, такие как WP-eCommerce, переписываются (или уже не знают), чтобы соответствовать стандартной схеме WordPress. Тем более, что WordPress 3.0 уже вышел. Об этом уже говорилось в WordCamp в начале этого года.

Вы можете легко разместить своих игроков в таблице Users. Их атрибуты могут быть сохранены в таблице Meta пользователей, плюс вы можете предоставить им особые роли и/или привилегии.

Теперь, если вы действительно в ООП, вы должны скачать некоторые интересные плагины и прочитать код, чтобы узнать, как это делают другие люди. В качестве примера я мог бы упомянуть один из моих собственных плагинов под названием Twitter Friendly Links - это не лучший ООП, но это определенно начало;)

Теперь вы можете перебросить его на W3 Total Cache, где вы увидите очень впечатляющий материал и организацию кода (благодаря Фредерик Таунс).

Кроме того, некоторые части Codex теперь показывают примеры в стиле OOP - например, API-интерфейс Widget. Надеюсь скоро увидеть и ура для ООП в WordPress! Хорошо, что люди задают такие вопросы, это то, что мотивирует основных разработчиков:)

Ответ 2

Я часто скачиваю плагины, чтобы посмотреть на код, надеясь, что я научусь чему-то из методов разработчиков и стиля кодирования. Часто я нахожу себя в недоумении, читаю плохо написанные плагины. Это не то, что они плохие разработчики, они просто недостаточно сосредоточены на альтернативных стилях кодирования и уточняют, как они программируют свои плагины. Вот как быстро я запишу свои плагины WordPress, надеясь повлиять на других разработчиков.

Шаги по началу работы с разработкой плагинов

Шаг 1 - Создайте свой файл и пусть он будет известен как плагин

Шаг 2 - Создайте объекты своего плагина

Шаг 3 - Добавление ваших действий и фильтров

Шаг 4 - Добавление настроек/параметров в ваш плагин

Завершите свой код

Ссылка: Написание плагина WordPress с использованием классов

Ответ 4

Попробуйте использовать WP встроенные пользовательские типы сообщений и пользовательские поля/таксономии API. Если этого недостаточно для вашей задачи, вы можете попытаться добавить некоторый ORM, например, Doctrine for backend. Также недавно я разработал простую структуру, которая предоставляет некоторые основные функции для добавления MVC-подхода к WP (базовая маршрутизация запроса, html-генерация api и "model" на основе сообщений Wordpress и настраиваемых полей). Это не идеально, но я могу поделиться кодом и, возможно, это поможет вам.