/ Сайтостроение / Wordpress / Шорткоды WP

Шорткоды WP

24.07.2015

1000

Создание шорткода

Шорткоды очень удобная функция WP. Одним из важнейших преимуществ является то, что если по каким-либо причинам сама функция не работает или отсутствует — ошибки не произойдет. Шорткод перестанет ее исполнять и выведется как простой текст.

add_shortcode( 'name-shortcode', 'name-function' );

name-shortcode — название шорткода (то что пишется в квадратных скобках при вызове)
name-function — название функции (уже имеющейся, либо создать функцию с этим названием)

В названиях шорткодов можно применять дефисы, в названиях функций нельзя

Добавление всех зарегистрированных шорткодов в панель редактирования в functions.php

// Добавление всех зарегистрированных шорткодов в панель редактирования

add_action('media_buttons','add_sc_select',11);
function add_sc_select(){
	global $shortcode_tags;
	$exclude = array("wp_caption", "embed"); // enter names of shortcode to exclude bellow
	echo ' <select id="sc_select"><option>Shortcode</option>';
	foreach ($shortcode_tags as $key => $val){
		if(!in_array($key,$exclude)){
			$shortcodes_list .= '<option value="['.$key.'][/'.$key.']">'.$key.'</option>';
		}
	}
	echo $shortcodes_list;
	echo '</select>';
}

add_action('admin_head', 'button_js');
function button_js() {
	echo '<script type="text/javascript">
		jQuery(document).ready(function(){
		jQuery("#sc_select").change(function() {
			send_to_editor(jQuery("#sc_select :selected").val());
			return false;
		});
		});
	</script>';
}

В Gutenberg этот вывод не работает. Как вывести данный список в блоке шорткоды Gutenberg

Просто вывести список шорткодов в шаблоне можно командой:

<?php global $shortcode_tags;
echo '<pre>'; 
print_r($shortcode_tags); 
echo '</pre>'; ?>

Шорткоды в виджетах

По умолчанию WordPress не разрешает использовать шорткоды в виджетах, но этот запрет можно обойти с помощью фильтра, который надо добавить в тот же файл functions.php:

add_filter('widget_text', 'do_shortcode');

Шорткоды в файлах

Для вставки шорткода в файл php придется квадратные скобки и их содержимое поместить в специальный php-контейнер:

<?php echo do_shortcode('[Короткий код]');?>

Отключаем неработающие шорткоды

Вставляем в файл functions.php

add_shortcode( 'site-banners', '__return_false' );

Не забудьте убрать запись для включения шорткода

Тэги:

Поделится информацией с друзьями

  • Похожие записи
  • Комментарии
  • Вложения
Хуки WordPress

Хуки WordPress

Deprecated: Function create_function() is deprecated in /home/t/tiberi6w/opttour.ru/public_html/wp-content/plugins/wp-spamshield/wp-spamshield.php on line 2033

Хуки WordPress — важнейший элемент функционирования ядра WordPress. Хуки (зацепы) действуют следующим образом: система WP содержит множество различных хуков (фильтров и экшенов), которые являются частью структуры ядра и имеют определенную Читать далее »

Расширение функционала WP

Расширение функционала WP

Разгрузка functions.php Для разгрузки основного файла functions.php нужно в папке темы создать папку (например inc) и в нее помещать файлы функций (желательно по назначению: хлебные крошки, шорткоды, редактирование, связанные с Читать далее »

Заглушка для сайта

Заглушка для сайта

Во время разработки / тех.обслуживания / тестинга нужно вставить код в functions function rezim_obsluzivania() { if ( !current_user_can( 'administrator' ) ) { wp_die('Сайт находится в режиме обслуживания, производятся обновления. Зайдите Читать далее »

/

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

Пока нет комментариев. Будь первым!

Шорткоды WP
Форма голосования (опросы)
Рекомендации для васФорма голосования (опросы)Opttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.