Как создать шорткоды wordpress (shortcode wordpress)


Приветствую, коллега! Почему коллега? Потому, что врядли кому-то кроме вебмастера может понадобиться создать свои шорткоды для wordpress’а.

Итак, коллега, зная свою собственную нетерпеливость, вот ссылка на краткий список действий.

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

Для начала можно прочесть определение шорткода wordpress в нашем словаре (откроется в новом окне).

Теперь перейдём к делу. И по скольку что-то понять проще всего на конкретном примере — определимся с задачами и целями.

Для примера создадим шорткод [text], который будет выводить на сайте слово «привет».

Любой шорткод может иметь атрибуты. Или параметры, которые могут быть заданы внутри квадратных скобок. Например [text color=»#ff0000″]. Но об этом несколько позже.

Для начала нужно создать функцию PHP в файле function.php нашей темы, которая и будет выводить вместо [text] слово привет. Для этого идём в консоль -> Внешний вид-> Редактор.

Редактор темы wordpress

Редактор темы wordpress

В списке справа находим Функции темы (functions.php).

Функции темы wordpress

Функции темы wordpress

В открывшемся файле вставляем следующий код(лучше в самом конце):

 

Теперь всё сохраняем и можем использовать наш шорткод.

 

Но эту историю можно и продолжить. WordPress поддерживает ещё и параметры (атрибуты) шорткодов.

Расширим задачу. Теперь мы хотим не только выводить текст, но и задавать цвет шрифта. Для этого расширим нашу функцию. Теперь она будет выглядеть так:

А вот и результат:

[text color=»#FF0000″]

Привет!

 

[text]

Привет!

Но и это ещё не всё о шорткодах в WordPress.

Часто бывает так, что шорткод работает, но выводит результат не там, где это нужно а над текстом. То есть в самом верху страницы. На самом деле проблема решается элементарно. Проверьте свой PHP код в файле function.php. В выводе вашей функции вы наверняка найдёте ECHO. Замените ECHO на return и всё заработает как надо.

 

 

А вот и обещанный список шагов для тех, кто всё сам знает и вообще лень читать)):

  1. Создаём функцию в файле function.php, обрабатывающую наш шорткод
  2. Регистрируем шорткод в системе с помощью add_shortcode(‘shortcode_name’, ‘function_name’);
  3. Радуемся результату.

Если что-то не понятно — читаем текст выше или задаём вопросы в комментариях или с помощью специальной формы.

Поделиться:

Оставьте комментарий

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