Как написать свой плагин для WordPress за 5 минут
Сначала может показаться, что создание плагина для WordPress — это что-то невероятно сложное и это нужно прямо конкретно изучать, но на самом деле, уже прочитав этот пост, вы сможете создать свой собственный плагин.
На самом деле всё зависит от задач, которые выполняет ваш плагин — если он просто добавляет несколько строчек CSS в админку, то это займёт от силы 10 минут, а если вы создаёте плагин кэширования или резервного копирования сайта, то это уже другой разговор.
Например в начале этого года один мой приятель решил создать плагин, связанный с SEO и фильтрацией товаров, так его компания выделила ему 80к бюджета и дала два месяца на разработку.
Шаг 1. Определиться с тем, какие задачи будет выполнять плагин
Скажу так, код, который находится в плагине, очень схож с тем кодом, который размещают в functions.php
. То есть вы можете потренироваться с готовыми хуками.
Ну раз уже я заговорил о произвольном CSS коде, то эту цель и будет выполнять мой плагин. Например я просто покрашу верхнюю панель в админке в другой цвет. CSS я вставлю прямо через тег, используя хук
.
add_action( 'admin_head', 'true_colored_admin_bar_0073aa' ); function true_colored_admin_bar_0073aa(){ echo ''; // выводим стили }
По сути это готовый код и если вы отправите его в functions.php
, то всё будет отлично работать.
Но мы же создаём плагин, поэтому этот код держим рядом и переходим ко второму шагу.
Если же ваш плагин будет выполнять более сложные задачи, состоять из нескольких файлов и содержать классы, то что вы вообще в этом уроке забыли? 😂
Шаг 2. Файлы плагина
Есть два варианта — это когда вы просто создаёте PHP-файл с уникальным названием и отправляете его в папку
, либо, если вы считаете, что ваш плагин будет состоять из нескольких файлов, да ещё и содержать какие-то ресурсы, типо CSS/JS/картинок, то тогда мы этот файл еще и помещаем в папку с таким же названием, короче говоря:
/wp-content/plugins/misha.php
либо /wp-content/plugins/misha/misha.php
Шаг 3. Метаданные плагина
В свой главный файл плагина теперь отправляем что-то в этом духе:
На всякий случае остановлюсь на паре параметров, ну мало ли:
- Plugin Name
- (единственный обязательный параметр!) Название плагина, как видите можно писать на русском.
- Plugin URI
- Если у вашего плагина в интернете есть страница с описанием или документацией, то неплохо бы тут указать её URL.
- Description
- Ну как бы описание.
- Version
- Версия плагина. Да, туториал совсем для новичков, поэтому добавлю, что например вы запустили свой плагин с версией 1.0 и люди пользуются, а потом поменяли какой-то код внутри своего плагина, а значит и его версия изменилась,
например на 1.1 - Author
- Вы.
- Author URI
- Ссылка на ваш сайт или… страницу вк.
- License
- Сам WordPress выпускается под лицензией GPL, возможно вы знаете, но также подразумевается, что все плагины и темы под WordPress тоже должны использовать эту лицензию.
Так как это урок для начинающих, на этой ноте я буду закругляться, а на 🎂🍰 видос:
Миша
В последние годы я долго не знал, что мне делать с сайтом misha.blog, ведь он практически не приносит никакого профита, но недавно я осознал, что моя миссия – способствовать распространению WordPress. Ведь WordPress – это лучший движок для разработки сайтов – как для тех, кто готов использовать заложенную структуру этой CMS, так и для тех, кто предпочитает headless решения.
Сам же я впервые познакомился с WordPress в 2009 году. Организатор WordCamp. Преподаватель в школах Epic Skills и LoftSchool.
Если вам нужна помощь с вашим сайтом или может даже разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда сделаем вам всё на лучшем уровне.
Как создать свой плагин для WordPress
Как создать свой плагин для WordPress
Здравствуйте, дорогие читатели! Перед тем как мы приступим к базовой оптимизации кода, я решил затронуть тему «Как создать свой плагин для WordPress»?! Многие сейчас решат, что я совсем сбрендил и пытаюсь научить новичков, не знающих ещё даже базовых принципов, создавать свои плагины. Но речь идет, не о профессиональной кастомизации движка, а о простеньком плагине, который значительно облегчит жизнь новичку, при первых разработках сайта.
Я говорю о более грамотной замене знаменитого файла functions.php, с которым нам несомненно придется работать, чуть-ли ни каждый последующий урок. Хотя я больше склоняюсь к слову «руководство», чем «урок», но это кому, как нравится. Итак, для чего это новичку?
Первая причина, по которой я решил написать эту статью именно перед постом Оптимизация сайта, это то, что если в файл functions.php вы некорректно вставите какой-нибудь код или скрипт, то сломается весь сайт. В то время как, если тоже самое случиться с нашим плагином, то сайт будет продолжать работать. А плагин просто автоматически деактивируется. В случае с локальным сервером это не критично, но редактирование functions.php при рабочем сайте в сети интернет, мягко говоря опасно.
Именно поэтому я решил сразу на берегу, научить вас создавать простенькие плагины и ими пользоваться. Данную методику я подсмотрел на сайте «Хостенко», за что им благодарен. С миру по нитке, как говориться. И мы приступаем…
Создание плагина для WordPress
1. Первым делом мы создадим простой php файл, который якобы и будет выполнять функцию дополнительного файла functions.php нашей темы. Создать новый файл php можно в любом текстовом редакторе, я рекомендую пользоваться . Создаем файл со следующим содержимым:
Чтобы скопировать код, просто наведите курсор на саму область и в выпадающей строке нажмите кнопку «Скопировать код». После этого вставьте этот код в ваш файл php и сохраните его. При сохранении рекомендую использовать какое-нибудь оригинальное название, чтобы не произошло конфликтов с установленными плагинами в WordPress’е.
2. Далее нам нужно этот файл, к примеру назовем его «my-custom-functions.php», заархивировать в ZIP архив. Думаю с этим сложностей не возникнет, заархивировать можно любым файловым архиватором, благо на сегодняшний день они в открытом доступе и бесплатны. В итоге должен получиться архив такого вида — «my-custom-functions.zip» (не путайте с форматом RAR!).
3. Теперь нам осталось добавить этот плагин в наш движок WordPress и активировать его. Заходим в админку, нажимаем вкладку «Плагины», там выбираем функцию «Загрузить плагин» и загружаем наш новорежденный архив как обычный плагин. После этого активируем его. На этом установка завершена!
Теперь весь код, который нам нужно будет добавлять в файл functions.php, мы будем добавлять в наш плагин «my-custom-functions.php» так же, как добавляли бы в его родителя. Вот мы и создали свой первый плагин для ВордПресс и избавили себя от возможных поломок в будущем. Данное действие считаю обязательным не только для новичков, но и уже для мастеров со стажем. Лишним уж точно не будет.
Как говориться: «Век живи – век учись!» До встречи в следующих статьях.
Быстрое создание дочерней темы wordpress при помощи плагина
Приветствую вас дорогие друзья!
В этой статье мы поговорим о простом способе создания дочерних тем WordPress при помощи специального плагина.
Наверняка вы уже сталкивались с такой ситуацией, когда вы вносите какие-то правки в файлы темы WordPress, а при первом же обновлении темы все ваши изменения слетают, и приходится либо вносить их по новой, либо вообще отказываться от обновления темы.
Навигация по статье:
В прошлой статье я рассматривала различные способы решения этой проблемы при помощи плагинов, которые позволяют вносить изменения в файлы стилей и даже добавлять определенные скрипты, которые будут сохраняться после обновления.
Однако данный способ подходит только в том случае, если вы вносите какие-то изменения только в файл стилей вашей темы. Если же вы решили добавить какие-то фрагменты кода в файл функций functions.php, или какие-то скрипты в подвал сайта, или вы вообще решили кардинально переделать тему, то в этом случае оптимальным вариантом будет создание дочерней темы.
Ранее я уже делала статью о создании дочерней темы для сайта WordPress вручную, но этот способ, во-первых, не очень удобный, а во-вторых, имеет свои ограничения.
Плагин для создания дочерних тем WordPress Child Theme Configuration
Создавая дочернюю тему при помощи плагина Child Theme Configuration, мы не только упрощаем себе создание дочерней темы, но и еще получаем возможность сохранения настроек родительской темы и еще ряд дополнительных настроек.
В общем плагин очень удобный, давайте уже его установим и попробуем что-нибудь создать.
- 1.Как обычно, копируем его название, и в административной части сайта переходим в раздел «Плагины» → «Добавить новый». Вставляем название в строку поиска, устанавливаем и активируем плагин.
- 2.После активации у нас в разделе инструменты появиться новый пункт, который называется «Child Themes». Кликаем по нему, и у нас открывается страница настроек.
- 3.Так как я уже создавала ранее дочернюю тему при помощи данного плагина, у меня здесь на первом шаге доступно несколько опций. Когда вы только установите данный плагин, у вас будет доступна только одна опция «Create New Child Theme».
- 4.Выбираем эту опцию и переходим к следующему, второму шагу. Здесь нам нужно выбрать родительскую тему из раскрывающегося списка и нажать на кнопку
- 5.Если всё в порядке у нас высветится вот такое сообщение:
- 6.Наследующем шаге нам необходимо задать название для нашей дочерней темы. По умолчанию плагин берет название родительской темы и приписывает ему «Child». При желании вы можете задать ей любое другое название, главное, что бы оно было латинскими буквами.
- 7.Далее нам нужно выбрать, где мы будем сохранять новые стили, которые мы будем дописывать. Нам доступно два варианта:
- Primary Stylesheet (style.css) — мы можем их сохранять в файле style.css нашей темы, как это происходит в большинстве случаев.
- Separate Stylesheet — создается отдельный файл, в который вы будете вносить свои стили. Данный вариант позволяет вам не переписывать заново стили ранее созданных дочерних тем, а добавлять свои в новый файл.
Выбираем здесь первый вариант, и переходим к следующему шагу.
- 8.Здесь нам необходимо выбрать способ загрузки стилей из родительской темы. Use the WordPress style queue — используется очередь WordPress, когда плагин сам подгружает стили родительской темы.
- Use @import in the child theme stylesheet — если для вашей темы такой вариант не подходит, и загрузка не происходит, то в этом случае мы можем использовать второй вариант. Разработчики плагина рекомендуют использовать этот способ только тогда, когда первый вариант не подходит.
- Do not add any parent stylesheet handling – родительские стили вообще не подгружаются.
- 9.На этом же шаге можно настроить возможность игнорировать отдельные css-файлы.
«Ignore parent theme stylesheet» — позволяет полностью игнорируем все стили и привила, которые написаны в файле style.css родительской темы.
Каждая тема, помимо основных стилей, имеет еще, как правило, несколько css-файлов, которые отвечают за стилизацию каких-то отдельных элементов. Если эти элементы у нас не используются и то их можно отключить.
Конкретно в данном случае можно отключить следующие файлы:
bootstrap.css – отвечает за адаптивную сетку, на основе которой свёрстаны страницы темы.
custom.css — содержит в себе дополнительные настройки отдельных элементов.
flex-slider.css – отвечает за стилизацию слайдшоу FlexSlider, и если мы не хотим использовать у себя на сайте слайдшоу, или будем использовать для него какой-то отдельный плагин, то нам этот css-файл не нужен, и мы можем поставить возле него галочку, что бы он не подключался.
font-awesome-css — отвечает за работу с иконочными шрифтами FontAwesome. Если мы не планируем использовать иконочные шрифты, то можно поставить здесь галочку.
Таким образом, отключая здесь отдельные ненужные нам css-файлы, мы можем существенно сократить код нашей дочерней темы.
- 10.На следующем шаге мы можем изменить заголовок темы, официальный сайт, автора , адрес сайта автора, а так же описание.
Все эти параметры у нас отображаются в разделе «Внешний вид» → «Темы», при клике на кнопку «Информация о теме».
В принципе эти все параметры ни как не влияют на работоспособность темы и носят чисто информативный характер.
- 11.Следующий, очень важный и интересный шаг позволяет нам скопировать все настройки родительской темы.
- 12.Нажимаем на кнопку «Create New Child Theme» и у нас выводится сообщение о том, что наша тема была успешно создана и нам рекомендуют воспользоваться предпросмотром перед ее активацией.
Нажимаем на эту ссылку и у нас открывается стандартный WordPress предпросмотр. Здесь мы можем убедиться что всё корректно работает и активировать тему.
Так же после создания эта дочерняя тема будет отображаться в разделе «Внешний вид» → «Темы».
Вот так вот просто создается дочерняя тема.
Функции для копирования дополнительных файлов дочерней темы
По умолчанию при создании дочерней темы плагин создает всего два файла, файл с таблицей стиле style.css и файл функций functions.php. Если же нам необходимо внести изменения в верхнюю часть сайта, за которую отвечает шаблон header.php, или в нижнюю часть сайт, подключить каких-то скрипты, добавить определенные блоки, то нам помимо этих двух файлов нужно будет скопировать еще некоторые файлы родительской темы, и уже потом вносить в них изменения.
Для этого:
- 1.Возвращаемся на страницу настроек плагина, и здесь нам нужно будет перейти на вкладку «Files». В перечне всех файлов родительской темы, мы при помощи галочек можем отмечать те файлы, которые нам нужны.
- 2.После того как вы все это отметили, нажимаем на кнопку «Copy Selected to Child Theme».
- 3.Теперь мы можем вносить изменения в файлы дочерней темы при помощи стандартного встроенного редактора WordPress или подключившись к сайт по FTP.
Так же на странице настроек данного плагина мы можем удалять те файлы, которые у нас не используются. Для этого в блоке «Child Theme Files» нам достаточно просто галочкой отметить те файлы, которые нам не нужны и нажать на кнопку «Delete Selected».
Так же на этой вкладке вы можете выполнять загрузку дополнительных изображений, которые будут загружаться в папку images нашей дочерней темы. Вам не нужно подключаться к сайту по FTP или через веб-интерфейс вашего хостинга. Вы можете все это делать через админку WordPress, что тоже очень удобно.
Просто нажимаем на кнопку обзор, выбираем то изображение, которое нас интересует, а затем просто нажимаем на кнопку «Upload».
Для удаления ненужных изображений просто ставим возле него галочку, и нажимаем на кнопку «Delete Selected»
Далее, на этой же вкладке мы можем изменить скриншот темы, который отображается в разделе «Внешний вид» → «Темы».
Еще одна интересная возможность — это возможность экспорта zip-архива с файлами вашей дочерней темы. Вы можете внести изменения, затем нажать на кнопку «Export Child Theme», скачать архив и хранить его на компьютере в качестве резервной копии, либо же импортировать ее на другие сайты и использовать там.
Как видите настроек у этого плагина очень много, но это еще далеко не все. Давайте коротко пробежимся по остальным вкладкам, чтобы узнать о его дополнительных возможностях.
Редактирование CSS-стилей дочерней темы при помощи плагина Child Theme Configurator
Прежде всего, перейдем на вкладку «Child Styles», где отображается файл style.css дочерней темы. Здесь вы можете просматривать содержимое данного файла.
На вкладке «Base Line Style» вы можете просмотреть стили родительской темы.
На вкладке «Web Fonts» можно выполнить подключение дополнительных шрифтов. Например, здесь указано как выполняется подключение шрифта Google Font. Вы можете скопировать пример кода и заменить ссылку на свою. После чего нажимаем здесь на кнопку «Save».
На вкладке «Property/Value», указываются значения различных css-свойств. Например, вы решили изменить css-свойство color или background-color. Вводим название этого свойства в верхнее поле, выбираем его из раскрывающегося списка и у нас на странице отображаются все значения фоновых цветов, которые задаются в теме. Любое из этих значений вы можете изменить.
После задания настроек нажимаем на кнопку «Save».
Вкладка «Query/Selector» позволяет вам переопределить стили элементов на свои. Вам даже не нужно никаике css-свойства писать. У вас прямо здесь отображается значения всех CSS свойств, указанных для определённого селектора.
Те значения, которые вам нужны, вы вносите в соответствующие поля.
Так же вы можете дописывать здесь новые css-свойства, копировать селекторы, и дописывать им свои значения. После чего обязательно нажимаем на кнопку «Save».
Если изначально у вас эта вкладка пустая, то нужно сначала изменить значения CSS свойств для нужного селектора на вкладке «Property/Value» или вписать его название в поле «Selector» и выбрать нужный блок из раскрывающегося списка.
В принципе все вкладки мы рассмотрели. Как видите настроек здесь очень много. Но если вдруг вам этих возможностей станет мало, то вы всегда можете обновить этот плагин до PRO-версии. Для этого переходим на вкладку «Upgrade» и здесь нажимаем на ссылку «Order Now».
Видеоинструкция
Вот такой вот интересный плагин. Я надеюсь, он существенно упростит вам создание дочерних тем, и у вас не будет возникать никаких проблем.
Если статья была для вас полезной, обязательно делитесь ею в социальных сетях и оставляйте комментарии. Так вы даете мне понять, что статья для вас интересна и есть смысл делать подобные статьи.
А на сегодня у меня все! Успехов вам и ваших проектам!
С уважением Юлия Гусарь
Блог записей WordPress — 5 плагинов для создания блога WordPress
Вступление
Настройка главной страницы в виде блога последних постов, изначально была в приоритетных настройках WordPress, как платформы для блога. Она до сих пор выставлена, как настройка по умолчанию.
Однако современное использование WordPress вышло далеко за рамки блогосферы и чаще приходится делать посадочную страницу сайта в виде красивой статической страницы.
В таком варианте настроек блог последних записей, уходит на второй план и его реализация становится непростой но решаемой, например, при помощи профильных плагинов.
Блог записей WordPress
Можно сделать блог последних записей WordPress инструментами администратора. Это будет работать, если вы не используете в качестве главной, статическую страницу сайта.
Для этого на вкладке Настройки>>>Чтение, просто выберите пункт настроек: Последние записи. Эту же настройку можно выставить/поменять на вкладке Внешний вид>>>Настройки.
А как быть, если вам нужно сделать главной страницей статическую страницу сайта. В этом варианте, блог последних записей перестаёт работать, и сайт лишается инструментов для создания новостного блога. Остаётся только возможность выводить на сайт архивы по рубрикам.
В этом случае, последние записи можно показать в виджете, что не очень заметно. Или написать свой файл php
, используя, функцию wp_query
, который будет выводить последние записи в виде страницы с отдельным шаблоном. Это требует знаний и навыков, что не всегда возможно.
Поэтому, при использовании на главной странице статической страницы сайта, выводим блог записей WordPress с помощью этих плагинов. Обратите внимание, блог любых записей, любой категории и любого архива, а не только последние записи.
Blog Manager Light
Лучший плагин, станица плагина ТУТ, дающий в бесплатной версии максимальное количество настроек блога.
По умолчанию, 6 шаблонов блога:
- 1 колонка;
- 4 колонки:
- 1 колонка в стиле виджет;
- Красивый шаблон в две колонки с оформлением;
- Слайдер большой,
- Слайдер в 3 колонки.
Масса нужных и полезных настроек. Например, вы легко можете изменить вид материала в блоге, а именно:
- Выбрать категории для этого блога.
- Убрать/оставить заголовок, картинку, мета-теги, дату, ссылку «читать далее».
- Есть настройка миниатюры: размеры, ссылка на неё, цвет фона.
Все плагины, предназначенные сделать блог записей WordPress, управляются приблизительно одинаково. Покажу, как создать блог на примере этого плагина (Blog Manager Light).
- Установите плагин, найдя его по названию (слову) на вкладке Плагины;
- Установите и активируйте плагин. Если забыли, как это делать, читать тут;
- Плагин появится в консольном списке. Вам нужна вкладка: Blog Manager >>> Add list;
Теперь вам нужно создать свой первый блог. Ему нужно дать уникальное имя и выставить настройки. Смотрим снины настроек, они не сложные.
дать название, выбрать сортировкучто показывать в блоге записейвыбор параметров блога еще настройки блога
После сохранения созданный блог появится в списке на вкладки Blog Manager >>> Blog lists. Под названием блога, есть кнопки Edit для изменения его настроек и кнопка Delete для его удаления.
Когда блог создан, нужно создать для него страницу. Сделать это нужно на вкладке Страницы>>>Создать новую. Дайте странице имя, если ваша тема поддерживает шаблоны страниц, выберете шаблон во всю ширину или любой другой.
Теперь самое главное. Чтобы на этой странице появился блог в визуальном режиме редактора, добавьте короткий код, который нужно взять в списке блоков на вкладке Blog lists нашего плагина.
Шорт код вставить на вновь создаваемую страницу, на вкладке «Добавить страницу».
После сохранения страницы, блог готов к добавке в любое меню сайта. Как добавить пункт меню типа «Страница», читать тут и тут.
И так, для создания блога нужно:
- В настройках плагина создать блог;
- Взять шорткод созданного блога;
- Вставить шорткод на новую страницу;
- Добавить эту страницу как пункт в любое меню.
Всё готово. Вы создали отдельный блог записей выборочных рубрик и/или меток и/или авторов и вывели это блог на сайт отдельным пунктом меню.
Blog Designer
Во первых, плагин «Blog Designer» распространяется в двух вариантах, бесплатном и платном (за 30$). В бесплатной версии авторы дали 6 шаблонов (классический, легкий бриз, Spektrum, эволюция, хронология и новости) чтобы создать блог записей WordPress.
При создании блога, предусмотрены настройки для выбора рубрик для блога, выбор макета блога, добавления шаред кнопок, выбор цвета фона сообщений блога, изменение длины отрывка, изменение надписи «Read more».
Чтобы создать блог на странице, используется короткий код, wp_blog_designer (в квадратных скобках).
Недостатки
Обращу ваше внимание. Этот плагин, по крайней мере, в бесплатной версии, не выводит миниатюры записи в блогах. Из-за чего блог получается бледноватым.
И главный недостаток, как мне кажется, с помощью этого плагина вы сможете создать, только один блог на своём сайте.
В Pro версии количество шаблонов уваливается до 40+, а также количество создаваемых блогов неограниченно. То есть для каждого раздела сайта вы сможете создать свой уникальный шаблон.
Напомню, платная версия стоит 30-40$, в зависимости от сезона.
WP Blog and Widget
Плагин «WP Blog and Widget» позволит создать страницу блог записей WordPress. К плагину прилагается свой виджет. Блог можно создавать по рубрике, и настраивать, изменяя основной шорткод плагина.
Чтобы создать блог, создайте страницу блога и добавьте короткий код:
- blog, в квадратных скобках.
Если хотите сделать блог по категориям, вы можете к шорткоде указать категории:
- blog category=»category_id», в квадратных скобках.
Есть другие настройки кода для создания сетки, количества сообщений и т.д.
Мне не показался этот плагин интересным, наверное, потому что, мало визуальных настроек.
Примечание. Плагин «WP Blog and Widget» создан с настраиваемым типом сообщения. Если вы ищете плагин, который работает с существующими постами, используйте другой плагин этого же автора «Blog Designer — Post и Widget»
Blog Designer — Post and Widget
Это плагин того же автора, что и предыдущий плагин. Он позволяет создать блог только из постов сайта. Работает также через шорткоды. Можно создать стеку сообщений, слайдер и т.д. Работают такие шорткоды (всё есть в документации плагина на его странице):
- wpspw_post, простой блог, шорткод в квадратных скобках;
- wpspw_recent_post_slider, блог в виде слайдера;
- wpspw_post limit = «10», блог с последними 10 сообщениями, и разбивкой на страницы.
- wpspw_post category = «category_id, блог по рубрике.
The Post Grid
Плагин «Post Grid» поможет создать адаптивный блог постов в виде сетки и списка без кодирования. Вы можете отображать сообщения по любой категории (категориям), тегам, авторам, ключевым словам, также заказывать сообщения по идентификатору, типу, дате создания, изменению даты и порядку меню.
Работают 4 макета блог записей WordPress. Есть настройка положения и размеров миниатюр (миниатюра, средний, большой, полный), что ценно в бесплатной версии. Есть свой виджет.
Fusion Page Builder: Extension — Blog
Страница плагина ТУТ. Это дополнительный плагин к конструктору страниц, плагину Fusion. С его помощью можно создать блог записей отфильтровав их по рубрике, дате, автору, меткам. В блоге используется отрывок (excerpt), а не полное содержание (content).
Плагин подхватывает настройки количества сообщений на странице, установленных на странице «Настройки>>> Чтение».
Повторюсь, для работы этого плагина требуется основной плагин Fusion — гибкий и расширяемый построитель страниц для WordPress.
Вывод
Вместо вывода, для блог записей WordPress я использую бесплатный плагин Blog Manager Light. Потому что, неограниченное количество блогов и 6 шаблонов внешнего вида меня устраивают. Из платных вариантов, рекомендую Blog Designer, их demo страница впечатляет.
©www.wordpress-abc.ru
Похожие посты:
Как создать плагин для WordPress
Существуют тысячи плагинов, которые выполняют ту или иную функцию, каждый устанавливается на WordPress через админчасть и могут настраиваться в зависимости от нужд администратора.
Хочу показать, как сделать самый простой плагин, который будет работать на Вашей теме. Я покажу основу и лишь малую часть, но если Вы разбираетесь в функциях WordPress, хоть немного работали с скриптами и кодами, Вы сможете создать свой собственный плагин с большими возможностями.
Плагин, который мы создадим в этом уроке, будет как дополнение к файлу functions.php. В своих уроках я часто рассказываю о функциях WordPress и о том, что их нужно вставлять в functions.php. Этот плагин может содержать например все функции, которые не надо вызывать в теле темы. Это может быть — длина тизера, ограничение на минимальную длину комментариев и тд. Получается, когда вы смените тему, то плагин с такими функциями останется и Ваши индивидуальные настройки не собьются, а это очень большой плюс.
Все плагины размещаются в папке wp-content/plugins, и каждый лежит в своей папке. Если у плагина всего один файл, то можно и без папки, но если много файлов, то для избежания путаницы и конфликтов, нужно все таки вложение в папках.
Начнем создание своего плагина с того что создадим папку и назовем ее так как будет называться плагин. Я назову ее myplugin
Потом, в этой папке создаем файл — myplugin.php. Это и будет наш плагин, имя можете задать свое. У нас будет только этот файл. Как и говорил, если Вы будете создавать более сложный плагин, то у Вас еще могут быть стили, изображения и другие файлы.
Теперь нужно открыть наш файл и добавить в него следующий код, а вернее описание, что бы WordPress мог определить его и данные о нем.
Сначала указываем имя плагина, потом ссылку, где можно получить о нем информацию или скачать. Потом идет описание, версия, имя автора, сайт автора и тип лицензии.
Потом нужно добавить код с лицензией, чтобы плагин соответствовал стандартам лицензии GPL2. В нужном месте укажите электронный адрес:
Copyright Год Имя_автора_плагина (email : EMAIl автора плагина) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, version 2, as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ // СЮДА КОД ФУНКЦИЙ ?>Теперь плагин определится в админчасти и его можно активировать, но это ничего не даст так как он пустой. В низу под лицензией есть строка «СЮДА КОД ФУНКЦИЙ». Вместо нее добавляем нужные функции и код всего плагина. В нашем случаи я для примера добавлю ограничение длины тизеров на главной до 25 слов. Для этого добавляем вот такую функцию.
//длина описания новостей function new_excerpt_length($length) { return 25; } add_filter('excerpt_length', 'new_excerpt_length')Готовый код плагина теперь будет таким:
По сути наш плагин готов и если его активировать он будет выполнять свою работу. Можно добавить еще много других функций или построить свой собственный плагин, который будет осуществлять какую-то задачу.
На вашем блоге есть самодельные плагины?
На этом все, спасибо за внимание. 🙂
Основы WordPress: Как создать плагин для WordPress
WordPress плагин – это PHP-скрипт, который вносит изменения в Ваш сайт. Это может быть небольшое нововведение в шапке сайта или же более радикальные преобразования (такие как, работа системы авторизации, автоматическая рассылка электронных писем и многое другое).
Темы меняют внешний вид Вашего сайта, а плагины изменяют его функциональные возможности. С помощью плагинов можно создавать индивидуальные типы постов, добавлять новые таблицы в базу данных для отслеживания самых популярных статей на сайте, автоматически связывать содержимое на сайте с CDN-серверами и многое другое. Здесь вы можете найти услуги от Mr.Shoe & Mr.Key
Тема или плагин?
Если Вы когда-либо настраивали темы вручную, то, вероятно, знаете, что существует файл functions.php, который предоставляет Вам множество возможностей и позволяет создавать разнообразный функционал в теме. Так какой же тогда смысл в плагине, если есть этот замечательный файл functions.php? Когда использовать тему, а когда плагин?
Нет каких-то чётких указаний или руководств, всё зависит от Ваших потребностей. Если Вы просто хотите изменить количество последних комментариев, которое отображается на главной странице сайта, то это без проблем можно сделать в functions.php. А если Вы хотите создать функционал, позволяющий авторизованным пользователям на сайте отправлять сообщения и добавлять друг друга в друзья, то без плагина не обойтись.
Дело в том, что функционал плагина сохраняется независимо от того, какая тема на сайте активна в данный момент. В то время как любые изменения, внесённые в functions.php перестанут работать, когда Вы решите сменить тему.
Создание первого плагина
Всё, что нужно для создания плагина – создать папку и один файл внутри неё с содержанием в одну строку. Перейдите к
wp-content/plugins
и создайте новую папку с именемawesomeplugin
. Внутри новой папки создайте файл с именем awesomeplugin.php. Откройте его в текстовом редакторе и скопируйте в него следующий фрагмент кода:
/* Plugin Name: Awesomeness Creator Plugin URI: Description: a plugin to create awesomeness and spread joy Version: 1.2 Author: Mr. Awesome Author URI: License: GPL2 */ ?> |
Из всей этой информации обязательно только имя плагина. Но если Вы планируете поделиться своим плагином с интернет-сообществом, то лучше добавить максимальное количество информации.
Теперь осталось только активировать созданный плагин. Это всё! Конечно же, этот плагин бесполезен, но он активен и корректно создан.
Создание структуры плагина
При создании сложной функциональности в плагинах разделение рабочего кода на несколько файлов может стать очень верным решением. Выбор за Вами, однако, помните, что следуя лучшим практиками и хорошим советам можно существенно облегчить свою жизнь.
Если функционал Вашего плагина базируется на одном основном классе, то лучшим вариантом будет вынести его в отдельный файл, а дополнительные функции разместить в других файлах. Для CSS и JavaScript-файлов имеет смысл создать отдельные папки.
Нужно стремиться к тому, чтобы найти золотую середину между правильной структурой, удобством в использовании и минимализмом. Разделите код плагина на несколько файлов в том случае, если это действительно необходимо, не нужно относиться к этому с фанатизмом. Думаем, Вам будет полезно взглянуть на структуру таких популярных плагинов как WP-PageNavi и Akismet.
Наименование плагина и его функций
При создании плагина обратите особое внимание на наименование функций, классов и самого плагина. Если Ваш плагин, например, выводит на экран последние новости в блогосфере, то назвать его “blognews”, а его основную функцию “blog_news” может показаться логичным. Проблема в том, что эти имена слишком общие и могут конфликтовать с другими плагинами, у которых имеется похожий функционал.
Распространённым решением этой проблемы является использование уникальных префиксов. Вы можете использовать название “my_blognews” или что-то в этом роде, имеющее низкую вероятность быть продублированным.
Безопасность плагина
Если Вы планируете распространять свой плагин в Интернете, то безопасность имеет первостепенное значение. Ведь от Вас будет зависеть защищённость всех сайтов, на которых будет использоваться плагин. Для того чтобы описать все возможные меры безопасности потребуется отдельная статья. Так что сейчас пробежимся по теории только в двух словах.
Безопасность Вашего плагина зависит от двух основных составляющих. Первая составляющая заключается в фильтрации и экранировании данных, которые были введены пользователями. Это защитит от SQL-инъекций и подобных атак. Вторая составляющая заключается в том, чтобы ограничить пользователей, не имеющих соответствующих привилегий от выполнения действий. Имеется в виду, что только администраторы и модераторы должны иметь доступ к удалению и редактированию содержимого сайта.
Всё это реализовать гораздо проще, чем Вы думаете, т.к. WordPress предоставляет большое количество функций для этого. Но если Вы только начинаете знакомиться с WordPress, то лучше пока не стоит беспокоится об этом.
Очистка после удаления плагина
Многие плагины оставляют множество ненужной информации после себя. Данные, которые используются только Вашим плагином (например, мета данные для постов и комментариев, таблицы базы данных и прочее) могут остаться лежать мёртвым грузом, если плагин не будет их подчищать после использования.
WordPress предоставляет три отличных хука, которые помогут позаботиться об этом:
-
register_activation_hook()
Этот хук позволяет создать функцию, которая запускается сразу же после активации плагина. Он принимает путь к главному файлу плагина в качестве первого аргумента и функцию, которую Вы хотите использовать в качестве второго. Этот хук можно использовать для проверки обновлений для плагина, проверки используемой версии PHP и т.д. -
register_deactivation_hook()
Название говорит само за себя. Функция будет запущена сразу же после деактивации плагина. Держите этот хук в рукаве на всякий случай. -
register_uninstall_hook()
Этот хук срабатывает, когда плагин полностью удалён из WordPress. Он сообщает нам о самом подходящем моменте для удаления данных, которые использовались плагином.
Однако, например, если Ваш плагин отслеживает популярность статей на сайте, то удаление этих данных при удалении плагина пользователем не будет хорошим решением. В таком случае лучше всего спросить пользователя, хочет ли тот удалять данные, созданные плагином.
В конечном итоге мы должны сделать так, чтобы пользователь мог установить Ваш плагин на свой WordPress сайт, пользоваться им в течение десяти лет, а затем удалить его и при этом не оставить и малейшего следа в файловой структуре сайта и в базе данных.
Документация и стандарты кода
Если Вы разрабатываете плагин для большого сообщества, то документирование кода является хорошей манерой (и хорошей практикой). Для этого можно использовать phpDocumentor, например.
Мы комментируем код для своего же собственного блага, потому что едва помним функции, которые написали вчера, не говоря уже о коде, написанном несколько месяцев назад. А если Вы начнёте работать в команде или Ваш код станет популярным, то документация станет неотъемлемой частью Вашей жизни. Так что лучше начать уже сейчас.
Хоть это и не так важно как документация, но следовать принятым в WordPress’ guidelines стандартам кода было бы неплохо.
Ближе к практике
Учить теорию и ничего не пробовать на практике очень скучно. Давайте найдём применение только что полученным знаниям. В качестве примера мы создадим небольшой плагин для отслеживания популярности статей на сайте. В качестве критерия популярности будет использоваться количество просмотров. Кстати мы будем использовать хуки, с которыми недавно познакомились.
Планирование
Перед тем, как заняться написанием кода, давайте тщательно всё спланируем и определим, какие функции нам понадобятся для правильной работы плагина. Вот что мы придумали:
- Функция, которая будет регистрировать факт того, что статья была просмотрена,
- Функция, которая позволит получить количество просмотров для статьи,
- Функция, которая позволит вывести количество просмотров текущей статьи на экран,
- Функция, которая позволит получить список статей отсортированных по количеству просмотров.
Первые шаги
Сначала нужно создать папку для плагина и подготовить файловую структуру. Создайте новую папку с именем awesomely_popular
. В этой папке создайте файл с именем awesomely_popular.php и добавьте в него примерно следующее содержимое:
/* Plugin Name: Awesomely Popular Plugin URI: Description: A plugin that records post views and contains functions to easily list posts by popularity Version: 1.0 Author: Mr. Awesome Author URI: License: GPL2 */ ?> |
Запись количества показов статьи
Не вдаваясь слишком глубоко в подробности, хуки позволяют вызывать одну из Ваших функций, когда другая функция WordPress сработает. Таким образом, если бы мы нашли такую функцию, которая срабатывает при просмотре пользователем конкретной статьи, то часть дела была бы сделана. Останется только написать собственную функцию для обновления количества просмотров статьи. Вот код этой функции:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
/** * Adds a view to the post being viewed * * Finds the current views of a post and adds one to it by updating * the postmeta. The meta key used is «awepop_views». * * @global object $post The post object * @return integer $new_views The number of views the post has * */ function awepop_add_view() { if(is_single()) { global $post; $current_views = get_post_meta($post->ID, «awepop_views», true); if(!isset($current_views) OR empty($current_views) OR !is_numeric($current_views) ) { $current_views = 0; } $new_views = $current_views + 1; update_post_meta($post->ID, «awepop_views», $new_views); return $new_views; } } |
Как Вы, наверное, заметили, мы используем документирующий блок в стиле phpDocumentor перед функцией. Прежде всего, мы проверяем в условном выражении, какой тип страницы пользователь просматривает.
Если пользователь просматривает нужный нам тип страницы, мы воспользуемся объектом $post
, который содержит информацию о текущей статье (идентификатор, название, дата публикации, количество комментариев и т.д.). Затем мы получаем количество просмотров, которое уже набрала эта статья, добавляем 1
к этому значению и перезаписываем информацию в базе данных. Для того, чтобы всё прошло максимально гладко, мы используем несколько проверок переменной, хранящей количество просмотров.
Текущее количество просмотров в любом случае должно быть задано и не быть пустым, а также тип переменной обязательно должен быть integer
. Если хоть одно из этих условий не выполняется, то мы будем использовать 0
в качестве текущего количества просмотров. После чего мы добавим 1
и обновим его значение в базе данных. В заключении мы возвращаем обновлённое значение.
Всё это хорошо, но эта функция никогда не будет вызвана и соответственно использована. В этом моменте на помощь придут хуки. Конечно же, Вы можете открыть файлы Вашей темы и вызывать функцию вручную прямо оттуда, но тогда при смене темы функциональность плагина будет потеряна. Хук wp_head
присутствует в большинстве популярных тем, поэтому мы можем использовать нашу функцию каждый раз, когда он срабатывает. Вот так:
add_action(«wp_head», «awepop_add_view»); |
Вот и вся “мистика” хуков. По сути, мы сказали, что хотим, чтобы функция awepop_add_view
вызывалась каждый раз, когда срабатывает хук wp_head
. Этот код можно разместить до или после самой функции.
Получение и отображение количества просмотров
В функции выше мы воспользовались get_post_meta()
для того, чтобы получить нужное нам значение из базы данных. Написание отдельной функции для этой цели может показаться избыточным, но зато даст нам большую гибкость при дальнейшем расширении плагина. Взгляните:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
/** * Retrieve the number of views for a post * * Finds the current views for a post, returning 0 if there are none * * @global object $post The post object * @return integer $current_views The number of views the post has * */ function awepop_get_view_count() { global $post; $current_views = get_post_meta($post->ID, «awepop_views», true); if(!isset($current_views) OR empty($current_views) OR !is_numeric($current_views) ) { $current_views = 0; }
return $current_views; } |
Этот фрагмент кода уже использовался нами в функции awepop_add_view()
. В данном случае это является дублированием кода, что не хорошо, но в будущем при внесении изменений это придаст плагину гибкости.
Пока мы только получали информацию. Теперь давайте отобразим её на экране. Вы можете подумать, что это совсем просто, что нужно просто распечатать значение, возвращаемое функцией awepop_get_view_count()
на экран. Это, конечно же, сработает, но что если просмотр только 1? Нам нужно будет использовать слово “view” в единственном числе. Также можно окружить это значение сопровождающим текстом. Поэтому давайте создадим отдельную простую функцию:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
/** * Shows the number of views for a post * * Finds the current views of a post and displays it together with some optional text * * @global object $post The post object * @uses awepop_get_view_count() * * @param string $singular The singular term for the text * @param string $plural The plural term for the text * @param string $before Text to place before the counter * * @return string $views_text The views display * */ function awepop_show_views($singular = «view», $plural = «views», $before = «This post has: «) { global $post; $current_views = awepop_get_view_count();
$views_text = $before . $current_views . » «;
if ($current_views == 1) { $views_text .= $singular; } else { $views_text .= $plural; }
echo $views_text;
} |
Отображение списка статей отсортированных по количеству просмотров
Для отображения списка статей отсортированных по количеству просмотров мы создадим функцию, которую сможем поместить в любое место в теме. В функции будет запрос к базе данных и вывод заголовков статей в цикле. Код функции находится ниже, а за ним следуют пояснения.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
/** * Displays a list of posts ordered by popularity * * Shows a simple list of post titles ordered by their view count * * @param integer $post_count The number of posts to show * */ function awepop_popularity_list($post_count = 10) { $args = array( «posts_per_page» => 10, «post_type» => «post», «post_status» => «publish», «meta_key» => «awepop_views», «orderby» => «meta_value_num», «order» => «DESC» );
$awepop_list = new WP_Query($args);
if($awepop_list->have_posts()) { echo «
while ( $awepop_list->have_posts() ) : $awepop_list->the_post(); echo ‘
‘; endwhile;
if($awepop_list->have_posts()) { echo «
«;} } |
Мы начинаем с того, что передаём большое количество параметров классу WP_Query
, чтобы создать объект, содержащий статьи. Этот класс сделает за нас всю грязную работу: он извлечёт 10 самых популярных статей и отсортирует их в порядке убывания.
Если объект со статьями не пуст, мы создадим элемент ненумерованного списка. А затем в цикле пройдёмся по всем статьям, которые извлекли из базы данных, отображая заголовок каждой в качестве ссылки на её полную версию. Когда все статьи будут отображены, мы поставим закрывающий тэг списка. Поместив функцию awepop_popularity_list()
в любом месте темы, мы получим список статей упорядоченных по популярности.
В качестве дополнительной меры предосторожности добавьте проверку на существование функции:
if (function_exists(«awepop_popularity_list»)) { awepop_popularity_list(); } |
Это обезопасит нас от PHP-ошибок, на сайте, если вдруг плагин будет отключён. Список просто не будет отображаться.
Выводы
Используя материал данной статьи, можно создать элементарный плагин для отслеживания самых популярных статей на сайте, используя небольшое количество функций. Конечно же, этот плагин может быть существенно улучшен, но это выходит за рамки текущей статьи. Теперь Вы без проблем можете изучать уроки, в которых нужно создавать собственный плагин WordPress.
Возможно, Вам будет интересно ↓↓↓
Лучший плагин для создания тестов и викторин для WordPress: WP Quiz — Плагин для WordPress
Nothing is quite so sharable as a good quiz. WordPress Quiz plugin allows you to build quizzes easily and the end results are engaging, professional and dynamic. Impress your visitors, keep them engaged and get tons of shares! Best of all, it’s easy to use and completely FREE!
[Quizzes] and How They Can Flood Your Website With Traffic! (https://mythemeshop.com/blog/quizzes/)
Check the live demos of different quizzes offered
1. Personality Quiz
2. Trivia Quiz
3. Flip Cards
WordPress Quiz
WP Quiz Plugin is the easiest way of creating viral content that people are eager to share. Your visitors can take part in the quiz you create, and this increases engagement by leaps and bounds.
You can create an unlimited number of Quizzes with the WP Quiz plugin, and each quiz is going to be responsive. So, your visitors can take part even from their mobile handsets as well as their tablets.
We have created the plugin with latest WordPress guidelines in mind so you can rest assured that the plugin will work on all the WordPress themes you might have.
WP Quiz has multiple options to help create quizzes in various styles with unique layouts. Creating a Trivia, Personality, or a Flip Quiz is an extremely task. Each Quiz type comes with its very own demo data for helping you with the initial setup. Importing demo data is as easy as clicking a button.
Each quiz type has options for adding text, videos, or images. You can use any combination of these to create a unique click that your visitors will instantly like. Don’t own the images you want to use? You just simply have to add the Image Credit because the option is built in and extremely easy to use.
You can have the entire quiz on a single page or stretch is across multiple pages if there are too many questions. A traditional skin is included if you like that style with more skins coming soon.
There is a restart option for questions if a user feels like taking the quiz again. Social media buttons are built in to make it very easy for visitors to share quiz results with their friends on social media.
You can enable the Quiz to scroll automatically to the next question. This makes it extremely easy for visitors to fill out a lot of questions in a short span of time.
With the WP Quiz Plugin, you can change font colors in a jiffy. You can change the background color to match that of your theme or have it in a bright color to make the quiz stand out from rest of the content.
A progress bar is displayed for your visitors to help them know their Quiz status. You can change the color of the progress bar.
To make the questions and the quiz pop out, we have included six animation effects. These unique effects contribute to making the layout eye-catchy.
You can manually place the quiz inside any other post using the built in shortcodes. This option allows you to show the quiz inside sidebars as well.
Awesome Features of WordPress Quiz Plugin
- Add Unlimited Quizzes
- Responsive Quizzes
- Use With Any WordPress Theme
- Trivia Quiz Type
- Personality Quiz Type
- Flip Quiz Type
- Comes with Demo Data
- One Click Demo Import
- Add Image or Video
- Option to Show Image Credit
- Single or Multi Page Layout
- Traditional Skin
- Option to Restart Questions
- Social Share Buttons
- Auto Scroll to Next Question
- Change Font Color
- Change Background Color
- Change Progress Bar Color
- 6 Animation Effects
- Shortcode Support
- Facebook Open Graph Support
- HD Video Tutorials
- 24×7 Dedicated Support
Complete Setup Tutorial for WordPress Quizzes
База знаний
- Как создать личностный тест -> https://mythemeshop.com/blog/create-a-quiz/#personality
- How to create a Trivia Quiz -> https://mythemeshop.com/blog/create-a-quiz/#trivia
- How to create a Flip Cards Quiz -> https://mythemeshop.com/blog/create-a-quiz/#flip
This plugin is developed and supported by MyThemeShop, check out some of the other WordPress plugins and free themes we’ve developed.
Feedback
If you like this plugin, then please consider leaving a feedback.
If would like, you can follow us on Google+, Twitter, and Facebook
2.0.5 [Dec 4, 2019]
- Fixed quiz data erasing issue on some installations
- Removed unwanted debug code from the frontend
2.0.4 [Aug 22, 2019]
- Added few missing strings in the localization file
- Fixed auto scroll issue on the last question
- Fixed importing issue where Quiz content is empty
- Removed the deactivate free version notice
2.0.3 [Jun 24, 2019]
- Removed
ES6
code from the frontend - Fixed Quiz data getting erased if there is
target="_blank"
2.0.2 [May 23, 2019]
- Added delay time before redirecting to the next question to show explanation
- Added support for %%score%% and %%total%% in the result titles of Trivia quiz
- Added scroll option in multiple page layout
- Added delay time before redirecting after completing the quiz
- Updated translations
- Improved code for better performance
- Removed Support page
- Removed Google+ share button
- Fixed Personality quiz sometimes shows 2 results or no result
- Fixed some strings with wrong text domain
- Fixed Vimeo video sometimes doesn’t work
- Fixed CSS conflict with few themes
- Fixed trivia answers are not checked in some cases
- Fixed not able to remove all the sharing buttons
- Fixed personality quiz was not working if only personality quiz is enabled
2.0.1 [Jan 31, 2019]
- Fixed babelHelpers is undefined bug
- Fixed an issue when few Quizzes were missing in the export file
2.0.0 [Jan 21, 2019]
NOTE: This is the major release, please take backup of your database before updating the plugin.
* Created plugin from scratch on the new framework
* Added new UI to improve the user experience
* Added an option to change the archive slug
* Added 44 new Animations for the multipage layout
* Added ‘Modern Flat Skin’ in the Skin option
* Added an option to set the overall timer for the quiz
* Added an option to show the results in the popup
* Added Shortcode button in the single post’s editor bar (Now you can insert the quiz without copy pasting the Quiz Shortcode)
* Added support for 30+ embedding services in the video field, few of them are Facebook, Twitter, Hulu, TED, Imgur, Instagram, SoundCloud, etc (https://codex.wordpress.org/Embeds#oEmbed)
* Added an option to import/export plugin settings
* Added an option to export Quiz(s)
* Added an option to show/hide the Next button for multiple page layout
* Added an option to show the hint in each question
* Added an option to set text on both sides of Flip Quiz
* Added an option to set background colors for both sides of Flip quiz
* Added advanced support for the developers, now you can override the templates
* Added an option to disable the unused quiz type
* Improved If ‘Show right/wrong answer at the end’ option is enabled, then answer for each question will appear only after the completion of the quiz.
* Overall code improvement for the security and performance
* Now you can purchase the pro version from the dashboard
* Many other under the hood improvements to make plugin robust
1.1.9 [Sep 25, 2018]
- Fixed wrong filter name related to play again button
1.1.8 [Jun 30, 2018]
1.1.7 [Jun 29, 2018]
1.1.6 [Jun 29, 2018]
1.1.5 [Mar 08, 2018]
- Fixed the auto scroll issue
1.1.4 [Mar 02, 2018]
- Fixed the loading of scripts into footer
- Fixed CSS of Flip Quiz
1.1.3 [Feb 05, 2018]
1.1.2 [Oct 20, 2017]
- Updated: The JavaScript libraries to latest version
1.1.1 [Oct 17, 2017]
- Fixed: Title repeating
- Fixed: Facebook share dialog position issue
- Fixed: plugin url and directory path issues for change of folder name
- Removed: constants for good
- Updated: POT file
1.1.0 [Jul 22, 2017]
- Fixed: Title while sharing if quiz is embedded into post/page
- Enhancement: Twitter card is used for sharing quiz result
- Enhancement: Google+ now shares quiz result with result text and image
1.0.13 [Jul 12, 2017]
- Fixed: Personality quiz twitter share issue
1.0.12 [Jul 06, 2017]
- Add timestamp to Facebook share link
1.0.11 [Jun 30, 2017]
1.0.10 [Jun 29, 2017]
- Fixed: Wrong shortcode name displayed in admin area ( «wp_quiz_pro» instead of «wp_quiz» )
1.0.9 [Jun 24, 2017]
- Fixed: Facebook invalid version issue
- Update: HTML in result description
- Fixed: Result id issue in Facebook Quiz
- Fixed: JavaScript styling and coding issues
- Fixed Facebook share issue and made plugin compatible with Facebook API v2.9
- Optimized code for better performance
1.0.8 [May 25, 2017]
1.0.7 [Nov 16, 2016]
- Fixed backend misaligned input forms
- Fixed backend thickbox modal css issue
- Removed backend bootstrap css file call
- Fixed quiz import issue
1.0.6 [Nov 10, 2016]
- Fixed required php version issue
- Fixed personality and trivia quiz share text title
- Other fixes and improvements
1.0.5 [Nov 4, 2016]
- Improved typography on mobile screens
- Fixed missing labels issue
- Fixed wrong social share link issue
- Combined CSS files to reduce backend load time
- Optimized Images
1.0.4 [Sep 22, 2016]
- Quiz shortcode is now displayed regardless of Quiz Post Type status (You can keep Quiz post types in the draft status to avoid duplicate content in the sitemap)
- Prevent empty max and min correct fields from being saved (Trivia Quiz)
- Prevent empty result points fields from being saved (Personality Quiz)
- Reduced font size of Flip quote on mobile screens
- Optimized Images
1.0.3 [Sep 19, 2016]
- Fixed 5 questions limit issue
- Localized string text ‘wrong’, ‘correct’ and ‘of’
1.0.2 [Sep 13, 2016]
- Fixed PHP notice on settings page
- Fixed permalink issue occurring after activation
- UI improvements
1.0.1 [Sep 12, 2016]
- Added confirmation warning box when user clicks on the import button
- Moved Open Graph option below Share buttons options in the General Settings page
- Changed Preview & Upload icons with text in the Quiz Editor
- Improved compatibility with Yoast SEO Plugin
- Few CSS and UI improvements
Отправить ответ