我需要检查文本小工具是否有特定内容?
更具体地说,我需要检查Text Widget内容是否有一个以开头的特定短代码
[按钮…
非常感谢您的帮助!
谢谢!
WordPress快捷代码在文本窗口小部件中不起作用。为什么我不知道,但如果你需要这个功能,它很容易实现,只需在下面的函数中写下这段代码。hp:
add_filter( 'widget_text', 'shortcode_unautop');
add_filter( 'widget_text', 'do_shortcode');
你的短代码现在应该可以在你的文本窗口小部件中使用了!
您也可以过滤文本小部件,并使用has_shortcode
函数来查找是否使用了您的快捷代码。
function my_filter_widget_text( $widget_text, $instance, $widget ) {
$tag = 'button';
if ( has_shortcode( $instance['text'], $tag ) ) {
$widget_text .= '<p>blub</p>';
}
return $widget_text;
}
add_filter( 'widget_text', 'my_filter_widget_text', 1, 3 );
希望这能有所帮助。
首先,您可以使用这样的函数导出小部件内容:
if(!function_exists('get_dynamic_sidebar'){
function get_dynamic_sidebar($index = 1)
{
$sidebar_contents = "";
ob_start();
dynamic_sidebar($index);
$sidebar_contents = ob_get_clean();
return $sidebar_contents;
}
}
我认为这个教程可以帮助你完成你的工作:
教程
wordpress的has_shortcode()
将在字符串中搜索是否存在特定的短代码。Codex文档可在此处找到。