Shortcode WordPress (шорткод WordPress) учимся на примерах

ShortCode WordPress

Что такое shortcode WordPress?

Работая с системой управления контентом WordPress, наверняка вы сталкивались с необходимостью вставить прямо в запись вашего блога элемент какого-нибудь плагина. К примеру для того что бы вставить на страницу форму обратной связи с помощью плагина «Contact Form 7″, вам необходимо было вставить в текст записи что-то похожее на это — [сontact-form-7 id=»360″ title=»Контактная форма 1″]. Эта запись в квадратных скобках и есть shortcode WordPress о котором мы будем говорить в этой статье. Шорткод WordPress позволяет нам вставить любую функцию используемую нашим сайтом, прямо в текст записи WordPress.

Как записывать shortcode WordPress?

Давайте более подробно разберёмся как правильно записывать шорткоды WordPress и из чего он состоит. И так возьмём к примеру такой код:

1
[my_shortcode id=1 color=red]Какой-то текст.[/my_shortcode]

В данной записи мы вызываем функцию привязанную к шорткоду «my_shortcode» и передаём в неё два параметра: 1-й это массив состоящий из атрибутов указанных в открывающем теге «my_shortcode» — id и color (здесь могут быть любые параметры с произвольными именами) и 2-й параметр это текст находящийся между открывающим и закрывающим тегами, а именно «Какой-то текст.».

Если указанную выше запись перевести в PHP, что фактически и происходит при выполнении данного кода, мы получим следующее:

1
2
3
my_shortcode(array('id'=>'1', 'color'='red'), 'Какой-то текст.'){
.............
}

Такой вариант можно использовать, к примеру для того, что бы обработать текст внутри нашего шорткода WordPRess.

Так же мы можем использовать такую запись:

1
[my_shortcode id=1 color=red]

Т.е. без закрывающего тега. В таком случае мы передаём в функцию только атрибуты указанные в открывающем теге. Так обычно делается, к примеру если нам просто нужно вызвать какую-то функцию, которая не нуждается в том, что бы её передавать что-то для обработки. Например если мы вызываем фотогалерею WordPRess и нам достаточно только передать в атрибутах id галереи которую нужно отобразить.

Пример создания shortcode WordPress?

Теперь давайте разберёмся как нам привязать к какой-то нашей функции шорткод ВордПресс. Напишем простейшую функцию и поместим её в файл нашего шаблона WordPress — functions.php.

1
2
3
4
5
<?php
function my_shortcode($attr, $text=''){
	echo '<p style="color:'.$attr["color"].'">'.$text.'</p>';
}
?>

Если кому не понятно, объясню. Наша функция принимает 2 параметра $attr(массив) и $text, после чего мы выводим текст из $text и устанавливаем для него цвет полученный из $attr[‘color’].

Теперь идём дальше и привязываем наши функцию и shortcode WordPress и пишем следующее:

1
2
3
<?php
add_shortcode('shortcode', 'my_shortcode'); 
?>

Этой записью мы создаём шорткод WordPress с именем «shortcode» и привязываем его к нашей функции «my_shortcode()».

Теперь проверим что у нас получилось. Вставьте в любую запись или на любую страницу созданный нам шорткоде ВордПресс:

1
[shortcode color=green]Здесь пишем любой текст[shortcode]

И теперь просматриваем нашу запись. Если вы всё сделали правильно, то вы должны увидеть надпись «Здесь пишем любой текст» и эта надпись будет green (зелёного цвета).

О том как вставить ShortCode в PHP файл вы можете узнать в статье Как вставить shortcode в PHP фаил.

Комментариев к записи: 2

  1. Как выводить виджеты через Шорткод в любом месте статьи???

    • ДимаС:

      Для этого можно подискать плагины или же присвоить функции вывода определённого виджета свой шорткод.

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


9 × = пятьдесят четыре