Wordpress包含add_shortcode函数中的javascript文件

时间:2015-09-11 11:06:03

标签: php jquery wordpress

我尝试在我的插件中包含一个短代码函数中的js文件,遗憾的是没有成功。 : - (

插件:

function send_mail(){

$input = "<input type='submit' value='submit' class='btn btn-primary'>";
wp_register_script('myscript', plugins_url('/js/myscript.js', __FILE__), array('jquery'), '1.0', true);

return $input;
}

add_shortcode('send', 'send_mail');

前端-page.php文件

<?php echo do_shortcode('[send]');

当我加载前端页面时,没有包含js。 :-(我做错了什么?

谢谢你的支持, Yab86

1 个答案:

答案 0 :(得分:1)

使用has_shrtocode

检查帖子中的shrotcode是否存在
function send_mail(){
    $input = "<input type='submit' value='submit' class='btn btn-primary'>";
    return $input;
}
add_shortcode('send', 'send_mail');

function check_shortcode_existence() {
    global $post;
    if( is_a( $post, 'WP_Post' ) && has_shortcode( $post->post_content, 'send') && !is_admin() ) {
        wp_register_script('myscript', plugins_url('/js/myscript.js', __FILE__), array('jquery'), '1.0', true);
        wp_enqueue_script( 'myscript');
    }
}
add_action( 'wp_enqueue_scripts', 'check_shortcode_existence');