Создание плагина WordPress Счетчик авторизации пользователей

Создание плагина WordPress Счетчик авторизации пользователей

От автора: WordPress – возможно, самая популярная система управления контентом в интернете. По данным журнала Forbes под управлением данной CMS находится свыше 60 миллионов веб-сайтов, что, несомненно, ставит систему в ранг лидера. WordPress заманивает огромным количеством плагинов. Хотите создать интернет-магазин? Есть плагин WooCommerce. Хотите создать портал, посвященный работе? Вот вам WP Job Manager.

В этом уроке мы научимся создавать плагин WordPress «Счетчик авторизации пользователей», который подсчитывает количество входов в учетную запись на сайте под управлением WordPress, значение будет отображаться в дополнительной колонке на странице списка пользователей.

Разработка плагина

Большинство файлов в плагине WordPress составляют файлы PHP, и хранятся они в /wp-content/plugins/. Заранее говорю, что вы должны уметь подключаться к серверу через FTP/SFTP/SCP или SSH. Создайте файл плагина wordpress-login-count.php. В конце урока мы получим готовый плагин. Сперва, необходимо добавить шапку плагина, без нее WordPress не поймет, что это плагин.

Хотите быстро научиться создавать сайты и блоги на WordPress с уникальным дизайном?

Получите самую полную в Рунете бесплатную систему обучения создания сайтов на WordPress

Узнать подробнее

Затем необходимо задать PHP пространство имен и класс плагина, как показано ниже.

Все экшены и фильтры, необходимые плагину, будут храниться в методе init().

WordPress запускает хук wp_login, когда пользователь авторизовался, т.е. им можно воспользоваться для подсчета количество авторизаций. Функция count_user_login() производит подсчет:

Хотите быстро научиться создавать сайты и блоги на WordPress с уникальным дизайном?

Получите самую полную в Рунете бесплатную систему обучения создания сайтов на WordPress

Узнать подробнее

Объяснение: сначала мы проверяем мета поле sp_login_count на пустоту. Если пустое, мы берем предыдущее сохраненное значение и добавляем к нему 1. Если непустое, то это значит, что пользователь авторизовался первый раз, т.е. в поле будет сохранено значение 1.

Для добавления колонки Login Count на странице списка пользователей используется фильтр manage_users_custom_column. Данный хук будет выводить количество авторизаций пользователя (смотрите скриншот выше).

Функция fill_stats_columns() в manage_users_custom_column добавляет новую колонку. Объяснение: первое условие if проверяет, находимся ли мы в колонке login_stat. Второй if проверяет поле на пустоту. Если условие выполняется, возвращается количество входов на сайт, в противном случае возвращается «No record found».

Метод get_instance() создает синглтон экземпляр класса и вызывает метод init() для регистрации экшенов и фильтров. И наконец, мы вызываем метода get_instance() для запуска PHP класса.

Вот и все! Мы закончили кодить наш плагин счетчик.

Заключение

Чтобы более подробно разобраться в процессе создания плагина и его работе на сайте под управлением WordPress, скачайте проект с GitHub. Надеюсь, данный урок будет вам полезен при создании плагинов для WordPress. Пишите, что думаете в комментариях.

Автор: Agbonghama Collins

Источник: http://www.sitepoint.com/

Редакция: Команда webformyself.

Хотите быстро научиться создавать сайты и блоги на WordPress с уникальным дизайном?

Получите самую полную в Рунете бесплатную систему обучения создания сайтов на WordPress

Узнать подробнее

Хотите быстро научиться создавать сайты и блоги на WordPress с уникальным дизайном?

Получите самую полную в Рунете бесплатную систему обучения создания сайтов на WordPress “Уникальный сайт с нуля”

Получить

Метки: ,

Похожие статьи:

Комментарии Вконтакте:

Комментарии Facebook:

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

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

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Я не робот.

Spam Protection by WP-SpamFree