Класс для добавления опций к сайту

Предисловие к уроку

Работая с CMS WordPress мне очень нравилась идея опций в плагинах, которые можно использовать как в админке, так и на стороне пользователя. В эти опции может помещаться как техническая информация при разработке (данные для подключения к базе, хранить список произвольных полей, хранить опции которые относятся к отдельным типам данных), так и какие-то статические данные которые выводятся на всех страницах (адреса, телефоны, название сайта, слоган). Такие опции очень полезны для вывода контактных данных, которые меняться не часто, но зачастую находятся в разных частях кода и искать их очень неудобно.

От слов к делу

Думаю с вступление закончили и первое что я вам дам это код самого класса.

Вот такой непростой класс, давайте рассмотрим все его методы по порядку.

Конструктор класса — проверяет, есть ли в базе данных таблица опций, если ее нет, то самостоятельно создает эту таблицу. Конструктор принимает переменную подключения к базе данных $db и переменную префикс таблиц $prefix. Если нет переменных $db или $prefix, то в свойство $error записывается сообщение об ошибке и программа останавливается.

Метод get_option() необходим для вывода одной опции которая уже есть в базе. Тут делается обычная выборка, думаю, если вы работаете с ООП, то об этом можно уже не говорить.

Метод add_option($option, $value) необходим для добавления новых опций в базу, если опция с указанным именем уже существует, то в свойство $this->error добавляется сообщение, которое разработчик может вывести для себя или для посетителей сайта при помощи метода log().

Метод is_name_options() помогает проверить, есть ли опция с предложенным именем в таблице опций.

Метод update_option() обновляет данные в уже существующих опциях. Принимает 2 обязательных параметра $option и $value (имя опции и значение).

Метод класса delete_option() необходим для удаления ненужных опций, если такая существует в базе данных. Опция проверяется и если была найдена, то удаляется из базы по имени.

Метод load_alloptions() предназначен для вывода на экран всех опций, эта функция нужна исключительно для просмотра опций разработчиком.

О методе log() мы уже говорили, этот метод предназначен для вывода всех сообщений, которые попали в массив свойства $this->error.

Работа с классом опций

Сейчас, когда мы рассмотрели все методы можно плавно перейти к работе с нашим классом.

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

Далее подключаем наш класс и пробуем его использовать:

Поиграйте с методами класса и попробуйте с помощью методов добавлять новые опции, выводить их на экран, обновлять данные в опции, удалять опции. Обязательно попробуйте выводить сообщения при помощи метода log().

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

Скачать архив с примером

Если нашли неточности, пишите нам в комментариях и мы постараемся их исправить.


Купить хостинг WordPress
/* Репетитор по wordpress
Услуги репетитора онлайн. Список курсов которые я веду
  • Базовый курс по веб-дизайну;
  • Верстка сайтов;
  • Общий курс по CMS WordPress и продолжение курса по разработке шаблонов;
  • Разработка сайтов на PHP.
Подробнее читайте на странице репетитор по WordPress
*/

Николаенко Максим

Директор веб-студии ProGrafika. Занимаюсь разработкой, дизайном и продвижением веб-сайтов. Всегда рад новым читателям блога и хорошим клиентам.


Вам может также понравиться...

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Шаблоны для WordPress
Самый лучший хостинг в Украине
Стабильный хостинг для Drupal