无法wp_enQueue_script(‘suggest’);

时间:2012-03-08 作者:hans

我无法将内置的自动建议脚本排入wordpress主题。

wp_enqueue_script(\'suggest\');
我目前针对该问题的解决方法是取消注册,手动注册,然后将其排队–如下所示:

wp_deregister_script(\'suggest\');
wp_register_script(\'suggest\', \'/wp-includes/js/jquery/suggest.js\');
wp_enqueue_script(\'suggest\');
我不知道如何解决这个问题,因为我没有得到任何错误(WP\\u DEBUG defined TRUE)

谢谢你的想法,汉斯

//更新

很抱歉,对我的问题的描述有点含糊不清:

我正在基于wordpress开发一个类似wiki的东西。有一个页面,用户可以上传新图像并标记它们(这就是我需要suggest.js的地方)。

此页面的模板文件如下所示:

<?php
//enqueue scripts + styles
wp_enqueue_script(\'uploadify\', get_bloginfo(\'template_directory\') . \'/js/uploadify/jquery.uploadify.v2.1.0.js\', array(\'jquery\'), null, null);
wp_enqueue_script(\'swfobject\', get_bloginfo(\'template_directory\') . \'/js/uploadify/swfobject.js\', array(\'jquery\'), null, null);
wp_enqueue_script(\'jcrop\');
wp_enqueue_style(\'jcrop\');
wp_deregister_script(\'suggest\'); //workaround
wp_register_script(\'suggest\', \'/wp-includes/js/jquery/suggest.js\'); //workaround
wp_enqueue_script(\'suggest\'); //workaround

...

get_header();

page content that uses scripts & styles

get_footer();
?>
在文件的最开始,我将为单个页面排队需要的其他样式/脚本。(其他“基本”脚本+样式在my functions.php中排队)

例如,将jcrop排入队列不会出现任何问题…

1 个回复
SO网友:kaiser

正如WP-Devel所述,您应该始终使用适当的挂钩。否则,任何子主题都无法稍后注销脚本。

// In your functions.php file
function add_suggest_script()
{
    wp_enqueue_script( \'suggest\', get_bloginfo(\'wpurl\').\'/wp-includes/js/jquery/suggest.js\', array(), \'\', true );
}
add_action( \'wp_enqueue_scripts\', \'add_suggest_script\' );
这将从includes文件夹加载脚本,并粘贴到页脚中(理想情况下脚本应该在那里)。

您也可以使用includes_url() 在上述函数中。这还将检查SSL连接。

注意:您必须wp_head(); 目前在那里,上面提到的钩子被击中了。

结束

相关推荐