Как спланировать структуру плагина для WordPress на примере Mosaic Generator

1621
1

В этой статье будет рассказано как Вы можете спланировать структуру плагина для wordpress. Рассматривать будем данную процедуру на примере плагина Mosaic Generator. Данный плагин собирает картинки с постов на Вашем сайте и склеивает их в одну мозаику.

Планируем структуру на примере плагина Mosaic Generator

Перед прочтение данной статьи настоятельно рекомендую ознакомится с постом: как написать плагин для wordpress за 10 минут и со статьей про функцию wordpress add-options-page.

Данная статья не претендует на идеальное описание по созданию плагина, поэтому предназначена больше для новичков, чем профессионалов. Написание любого плагина следует начинать с планирования тех функций и действий которые будет выполнять приложение. Практически все действия будет выполнять отдельный класс. Тем кто не представляет что такое классы в php следует ознакомится с ними. Коротко классы можно представить как некий объект, который может получать параметры, выполнять различные функции и процедуры. Представьте себе чайник. Чайник выполняет функцию нагрева воды, а при ее закипании выключается. Поэтому чайник отдаленно напоминает класс :)

Классы в php принято хранить в отдельном файле. Название файла не принципиально, но лучше называть его на подобии mosaic-generator.class.php, таким образом у нас появится файл класса. Дополнительно создадим основной файл плагина, который будет управляющим и назовем его по имени плагина: mosaic-generator.php

Оба файла поместим в отдельную папку на компьютере mosaic-generator, этого будет достаточно чтобы написать действующий плагин.

Готовим макет основного класса для плагина

Макет будет представлять собой каркас класса с функциями и методами. Однако самого кода функции пока еще нет. Так же я добавил в класс две переменные: $options для хранения настроек плагина. В эту переменную должны считываться все параметры при загрузке страницы и инициализации кода. В переменную класса $image_array будем считывать из базы сохраненный в настройках список URL адресов уменьшенных картинок, которые будут слепляться в мозаике.

Итак у нас есть каркас основного класса для плагина и теперь нам надо определить какие функции будут вызываться в какой момент. Я советую Вам начать с функции активации и деактивации, то есть с функции класса activate() и deactivate() так чтобы плагин корректно устанавливался и удалялся, причем очищал после деактивации настройки в базе.

Теперь попробуем использовать данные функции в основном файле плагина, то есть в файле mosaic-generator.php, но сначала необходимо прописать описание, о котором говорилось в первой статье.

Итак описание добавлено и можно подключать класс из основного управляющего файла, для этого мы должны включить код класса mosaic-generator.class.php с помощью функции require_once. Выглядеть это будет следующим образом:

Если быть дословным то тут написано, что если класс mosaic_generator_class не существует то подключить файл mosaic_generator.class.php, в котором этот класс как раз прописан. Общий код управляющего файла будет выглядеть следующим образом:

Как видите кроме описания пи подключения класса тут нет, разве что я добавил глобальную переменную mosaic_generator в которой будет храниться объект класса. Однако перед тем как использовать функции класса необходимо создать его экземпляр, поэтому мы прописываем следующий код:

Теперь у нас есть созданный класс и мы можем обращаться ко всем его публичным функциям(то есть тем которые можно вызывать из вне класса). Дальше вешаем на события активации и деактивации собственные функции и прописываем их код. Причем теперь мы можем вызвать из них функции activate и deactivate класса mosaic_generator_class. Посмотрите как это сделать:

На сегодня это все, исходники всего что сделано можно скачать по ссылке.

1 КОММЕНТАРИЙ

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here