我需要一种在加载页面/帖子内容之前对其进行过滤的方法,这样,如果存在特定的短代码,我可以将脚本添加到页眉中。经过大量搜索之后,我在http://wpengineer.com上发现了这一点 。
function has_my_shortcode($posts) {
if ( empty($posts) )
return $posts;
$found = false;
foreach ($posts as $post) {
if ( stripos($post->post_content, '[my_shortcode') )
$found = true;
break;
}
if ($found){
$urljs = get_bloginfo( 'template_directory' ).IMP_JS;
wp_register_script('my_script', $urljs.'myscript.js' );
wp_print_scripts('my_script');
}
return $posts;
}
add_action('the_posts', 'has_my_shortcode');
这绝对是出色的,完全满足了我的需求。
现在,我需要进一步扩展它,并对侧边栏进行相同的操作。它可以是特定的窗口小部件类型,短代码,代码段或任何其他可以识别何时需要加载脚本的方法。
问题是在加载侧栏之前我不知道如何访问侧栏内容(所讨论的主题将具有多个侧栏)