Как использовать shortcode для WordPress в своей теме

Shortcode (шорткод) — это набор простейших функций, создающих микро-коды, которые можно использовать в стандартном редакторе WordPress, в виджетах и также в файлах шаблона. Позволяет вставлять на страницы и в записи WordPress сайта разного рода контент.

Регистрация shortcode

Чтобы добавить shortcode, необходимо зарегистрировать его в файле functions.php в папке темы WordPress.

Структура регистрации shortcode:

function new_shortcode($atts, $content = null){
   // если параметры нужны в shortcode
   // параметры могут быть установлены по умолчанию
   extract( shortcode_atts( array(
        'param_one' => 'h1'
   ), $atts ) );
   $shortcode = '<'.$param_one'>'.$content.'';
   return  $shortcode;
}
   // регистрирует shortcode в wordpress
add_shortcode('demo-shortcode','new_shortcode');

Внутри WordPress редактора, можно ввести:

[demo-shortcode param_one="h2"]Demo[/demo-shortcode]
// вы можите не вставлять param_one в редакторе если он имеет дефолтное значение.
// если он указан, то будет переопределять его значение по умолчанию.

На странице shortcode будет иметь вид:

</pre>
<pre class="default prettyprint prettyprinted"><code><span class="tag"><h2></span><span class="pln">Demo</span><span class="tag"></h2></span></code></pre>
<pre>

Добавление нового shortcode

function footag_func( $atts ) {
    return "foo = {$atts['foo']}";
}
add_shortcode( 'footag', 'footag_func' );

В плагины можно добавить shortcode с помощью функции add_shortcode.
Shortcode может быть использован в любом нужном месте на любой странице, просто заключив его в квадратные скобки.

Использование shortcode в виджетах

Чтобы использовать shortcode в виджетах, следует добавить следующий код в functions.php:

add_filter( 'widget_text', 'shortcode_unautop' );
add_filter( 'widget_text', 'do_shortcode' );

Порядок строк имеет важное значение.

Акция для новых клиентов

Закажи разработку Landing page "под ключ" и получи скидку 50% на контекстную рекламу

Получить бесплатную консультацию
Присоединяйся к нам в соц.сетях
Интересные статьи по теме