短代码是WordPress常用的功能,虽然目前已被区块所取代,但还是普遍应用中。有些短代码会用到JS脚本,但又不想全局加载,可以用下面的代码实现,添加短代码时仅在当前页面加载JS脚本。
function zm_has_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 ) { wp_register_script( 'my_script', get_template_directory_uri() . '/js/my_script.js', array(), version, false ); wp_enqueue_script('my_script'); } return $posts; } add_action('the_posts', 'zm_has_shortcode');
以此类推,也可以加载特定的样式。
本站文章大部分为原创,用于个人学习记录,可能对您有所帮助,仅供参考!
我的微信
微信号已复制
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
天津市 1F
学习了!!
日本 2F
有点草率了,换成preg_match更好吧,毕竟很多短代码带参数的。