Как в WordPress разрешить выполнение шорткодов в комментариях

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

<?php
function shortkodi_v_kommentariyah() {
    // Ниже перечислите те шорткоды, поддержку которых
    // вы хотите разрешить в комментариях:
    add_shortcode('blogurl', 'blogurl');
}

add_filter('comments_template', 'razreshit_shortkodi_v_kommentariyah');

function razreshit_shortkodi_v_kommentariyah() {
    remove_all_shortcodes();
    shortkodi_v_kommentariyah();
    add_filter('comment_text', 'do_shortcode');
}

shortkodi_v_kommentariyah();

// Пример обьявления шорткода:
add_shortcode('blogurl', 'blogurl');
function blogurl(){
    return '<a href="' . get_bloginfo('url') . '">(Ваш сайт)</a>';
}
?>

Для примера я объявил простой короткий код [blogurl]. Последний будет выводить адрес вашего блока в виде <a href="http://www.example-blog.com">(Ваш сайт)</a>.





© 2012-2014 Druweb.ru. Вы можете спокойно копировать любые материалы сайта только при наличии обратной ссылки.