Questions tagged «wp-enqueue-script»

如果尚未包括脚本并且已注册所有依赖项,则根据脚本依赖项在适当的时间将脚本文件链接到生成的页面。您可以将脚本与先前使用wp_register_script()函数注册的句柄链接,或者为该函数提供链接脚本所需的所有参数。这是将JavaScript链接到WordPress生成的页面的推荐方法。

2
在排队的样式和脚本上阻止版本URL参数(?ver = XXX)
用例 我一直在尝试使用Chrome的开发工具工作区功能。它具有直接在开发工具中编辑文件并保存已保存的样式表的能力,甚至可以刷新自身(甚至编译然后刷新!)。 但是,如StackOverflow问题“ SASS重新编译CSS时Chrome的“自动重新生成CSS”不会重新加载页面”中所述,样式表URL上的URL参数阻止Chrome注意到更改。 期望的结果 这意味着,仅在开发期间,我才希望?ver=X.X.X从常规样式表<link>输出中删除wp_enqueue_style()。换句话说,我想要默认值href: http://localhost/mysite/wp-includes/style.css?ver=4.1.1 改为: http://localhost/mysite/wp-includes/style.css

1
如何正确地使子主题中的脚本和样式出队?
我在一个项目中制作了一个父主题和一个子主题。我将CSS和JavaScript放入了父主题中,如下所示: function project_necessary_scripts() { //Stylesheets wp_register_style( 'bootstrap-css', get_template_directory_uri() .'/css/bootstrap.min.css' ); wp_register_style( 'bootstrap-map', get_template_directory_uri() .'/css/bootstrap.css.map' ); wp_register_style( 'project-css', get_stylesheet_uri() ); wp_enqueue_style( 'bootstrap-css' ); wp_enqueue_style( 'bootstrap-map' ); wp_enqueue_style( 'project-css' ); //JavaScripts wp_register_script( 'modernizr-js', get_template_directory_uri() .'/js/modernizr-2.8.3.min.js', array(), '2.8.3' ); wp_register_script( 'project-js', get_template_directory_uri() .'/js/project.min.js', array('jquery'), '20150401', true ); wp_enqueue_script( 'modernizr-js' ); wp_enqueue_script( 'project-js' ); …

3
wp_add_inline_script没有依赖性
我有一个要插入页面页脚的JavaScript代码段。这是一个跟踪代码,可以说类似于Google Analytics(分析)。它没有依赖关系,是一个独立的代码段。 我可以做这样的事情 function render_tracking_code(){ wp_enqueue_script( 'depends-js', 'https://rdiv.com/dummy.js', array(), '0.01', true ); wp_add_inline_script( 'depends-js', 'aWholeBunchOfJavascriptCode' ); } add_action( 'wp_enqueue_scripts', 'render_tracking_code' ); 看起来有点愚蠢(dummy.js是一个空白文件),但是可以工作。有没有办法跳过依赖关系?

2
如何在前端的插件中实现WordPress虹膜选择器?
这个问题在这里被问同样的问题,因为我,但没有足够的答案,也没有选择正确的答案,所以我再次问,如果我在一个更连贯的方式问我可能会得到回应希望。 我正在尝试实现在Wordpress主题自定义API窗格中看到的颜色选择器轮,以选择颜色。使用挂钩时,加载脚本和样式工作正常,“ admin_enqueue_scripts”可以工作,但是尝试使用挂钩在前端加载这些脚本,“ wp_enqueue_scripts”不起作用。样式入队,但脚本不入队。 我想避免将文件复制到我的插件中,而不会复制与Wordpress捆绑在一起的文件。必须有一种方法可以使Iris拾色器在我没有看到的前端工作。 对于那些想知道为什么要这样做的人,我正在开发一个插件,该插件在屏幕的侧面添加了一个弹出式面板,可让您对网站进行实时临时样式更改,而无需通过wp-admin登录面板。

1
如何在jquery之后加载脚本?
function load_my_script(){ wp_register_script( 'my_script', get_template_directory_uri() . '/js/myscript.js', 'jquery' ); wp_enqueue_script( 'my_script', 'jquery'); } add_action('wp_enqueue_scripts', 'load_my_script'); myscript.js在jquery之前加载,为什么?以及如何使它加载后jquery? 谢谢。

6
无法将脚本排入页脚吗?
WordPress Codex 说: (旧的法典页面) $ in_footer (布尔值)(可选)通常,脚本位于该部分中。如果此参数为true,则脚本位于的底部。这要求主题在适当的位置具有wp_footer()钩子。请注意,即使将脚本放在页脚中,也必须在运行wp_head之前使其脚本入队。(WordPress 2.8中的新增功能)默认值:false 所以我true在每个脚本之后添加src path: /** * JavaScript */ function my_scripts_method() { wp_deregister_script( 'jquery' ); wp_register_script( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js', true ); wp_enqueue_script( 'jquery' ); } add_action('wp_enqueue_scripts', 'my_scripts_method'); function media_queries_script() { wp_register_script( 'mediaqueries', get_template_directory_uri() . '/js/css3-mediaqueries.js', true ); wp_enqueue_script( 'mediaqueries' ); } add_action('wp_enqueue_scripts', 'media_queries_script'); function custom_script() { …

1
加载具有依赖性的脚本就是卸载另一个脚本的依赖性
首先,我知道我的问题是在使用WooCommerce插件进行工作时发生的,这通常会使它脱离主题。但是,我认为我的问题与有关wp_enqueue_script,因此希望它仍然是话题。 因此,WooCommerce正在admin_enqueue_scripts挂钩上注册脚本。此脚本需要大量依赖项: wp_register_script( 'wc-admin-meta-boxes', WC()->plugin_url() . '/assets/js/admin/meta-boxes' . $suffix . '.js', array( 'jquery', 'jquery-ui-datepicker', 'jquery-ui-sortable', 'accounting', 'round', 'ajax-chosen', 'chosen', 'plupload-all' ), WC_VERSION ); (在代码的后面部分,它专门列在post.php和post-new.php页面上,用于产品发布类型) 在我编写的用于WooCommerce的自定义插件中,我还在同一钩子上加载了脚本。 wp_enqueue_script( 'My_Plugin_Metabox', My_Plugin_Class()->plugin_url() . '/assets/js/mnm-write-panel.js', array( 'jquery', 'wc-admin-meta-boxes'), My_Plugin_Class()->version, true ); 如果我将插件的脚本排入队列$in_footer,true然后将参数设置为,则无法解释,则不会加载jQuery UI Datepicker脚本(根本不在源代码中),并且控制台会显示相应的脚本错误。 如果我将脚本加载到标题中,这不是问题。如果我在没有wc-admin-meta-boxes依赖项的情况下加载脚本,那也可以解决问题 所以我想知道的是,为什么在页脚中加载我的脚本会影响核心datepicker脚本的加载?(我根本不在脚本中使用datepicker。)或者为什么不将Woo脚本作为依赖项也会影响datepicker脚本?在我看来,无论Woo metabox脚本的依赖项如何,都应加载datepicker脚本,但这没有发生。 根据Kaiser的评论,我创建了以下MU插件(由于$GLOBALS['wp_scripts']是对象,因此可以从评论中进行调整: /* Plugin Name: Dump jQUI Dp */ …

2
如何使用内置的Wordpress“浏览链接”功能?
我正在编码一个小部件,我希望用户能够像编辑常规文章或页面时一样选择一个链接(当您单击小链接图标并在弹出窗口中获得AJAX搜索功能时) )。有谁知道我是如何工作的?我有一个要附加的HTML按钮,甚至单击它,还有一个要输入值的字段。 在class-wp-editor.php中,我发现了一些有趣的东西,想知道我是否需要这些文件。 wp_enqueue_script('wp-fullscreen'); wp_enqueue_script('wplink'); fullscreen.link();像上面提到的文件一样,在调用时,出现此错误: Uncaught ReferenceError: wpActiveEditor is not defined ..而我现在很困惑,因为引用该变量的JS在我看来很疯狂。 想要指出正确的方向吗?我很想让这个工作正常进行,它将为我的小部件提供一个杀手级的用户界面! - - - 编辑 - - - - 到目前为止,除了我之前所说的脚本包含内容之外,没有那么多代码。 <label for="<?php echo $this->get_field_name('link'); ?>">Link URL (including http://) : </label> <input type="text" id="<?php echo $this->get_field_id('link'); ?>" name="<?php echo $this->get_field_name('link'); ?>" value="<?php if(isset($link)) echo esc_attr($link); ?>" class="widefat" /> …

3
如何从排队的脚本和样式中删除网站URL?
我正在处理SSL问题,我想从通过wp_enqueue_scripts输出的所有脚本和样式中删除域。这将导致显示所有脚本和样式,并带有来自域根目录的相对路径。 我想我可以使用一个钩子来解决这个问题,但是,我不确定哪个钩子,也不确定如何去做。

3
如何加载特定于页面的脚本/样式
我知道根据默认的Wordpress引导过程,首先functions.php调用,然后处理所有主题。但是我目前将完全重构主题以对其进行优化。我的想法是为通用属性,规范化颜色提供一个基本的CSS文件。或保留单个css文件,但在这种情况下,我需要对大小写进行硬编码functions.php才能确定页面。每个页面还有一个特定的页面,因为加载定义了所有样式的巨大CSS样式文件没有意义。 所以我的问题是,挂载特定脚本/样式的最佳选择是什么? 应该是header-xxx.php还是其他文件?也许有一种方法可以以更可扩展和更优雅的方式来实现这个想法? 我将不胜感激。

1
连接并最小化排队的JavaScript文件的依赖性
我正在使用JavaScript文件加载wp_enqueue_script到主题中。但是,与此同时,我也正在加载几个jQuery文件,以及排队脚本的依赖关系(该脚本已经由Grunt连接并缩小了)。这是我的代码: add_action('wp_enqueue_scripts', function() { wp_enqueue_script( 'customscripts', get_template_directory_uri() . '/assets/js/main.min.js', array('jquery', 'jquery-form', 'json2', 'jquery-ui-autocomplete'), NULL, true ); }); 对于依赖项数组,我将如何串联和最小化那些jQuery依赖项?我试图让我的网站尽快加载,并且加载的JS文件越少越好。另外,如果有可能使它们异步加载(使用标记的async属性<script>),那将是王牌。 我宁愿不使用插件也要这样做,但如有必要,我将使用插件。 谢谢你的帮助 :)

4
是否有JavaScript API?如何在JS中访问公共和私有数据?
根据这篇文章,没有针对Wordpress的内置JavaScript API。因此,想要建立在AJAX上的开发人员似乎提出了自己的解决方案,这对我来说似乎不合适。 除了使用内置API获取帖子或任何数据外,我真正想念的是一小套JavaScript函数,用于处理后端和前端接口。现在,关于这个问题有什么计划吗? 例如,我很想知道 左侧主菜单折叠, 什么用户登录 他是哪一组 甚至客户端数据(例如浏览器) 等等。

1
注册并排队有条件的(浏览器特定的)javascript文件?
该WP.SE社区一直建议使用wp_register_script,并wp_enqueue_script在主题/模板添加脚本(同样地,wp_register_style并wp_enqueue_style为样式表)。 这就是我注册和排队脚本的方式... 首先,我在functions.php中添加类似的内容 add_action('init','wpse54189_register_script'); function wpse54189_register_script(){ //Register scripts wp_enqueue_script( 'jquery' ); wp_register_script( 'aahan_bootstrap_transition', get_template_directory_uri().'/js/bootstrap-transition.js'); wp_register_script( 'aahan_bootstrap_carousel', get_template_directory_uri().'/js/bootstrap-carousel.js', array('aahan_bootstrap_transition')); wp_register_script( 'wpse54189_ajax_comment', get_template_directory_uri().'/js/no-reload-comments.js'); } 然后像这样在模板文件(例如header.php)中调用它 <?php wp_enqueue_script( 'aahan_bootstrap_carousel' ); ?> <?php wp_enqueue_script( 'wpse54189_ajax_comment' ); ?> 现在,至此,我该如何注册和入列特定浏览器可以识别的“条件JavaScript文件”?例如: <!--[if lt IE 9]> <script src="<?php echo get_template_directory_uri(); ?>/js/html5.js" type="text/javascript"></script> <![endif]--> 如何正确注册和入队? PS:我使用Reddle主题,该主题由Automattic的主题牧马人开发。主题的header.php直接使用前面提到的代码-即未排队。那么,这是否意味着这是唯一的方法?

2
使用wp_enqueue_script有什么好处?
在小型自助式网站上使用wp_enqueue_script有什么真正的好处?例如,Modernizr,为什么要通过函数将其排队,而不是直接在文档头内部调用它? 我可以在大型网站上看到好处,在大型网站上,您可能会在目录中四处移动,或者有多个人在文件中四处乱窜,或者在公开可用的主题中包含许多未知数,但是在像个人博客这样的小型网站上却有什么好处呢?还是很少-更改并且只有一个用户?在这种情况下,看起来好像多余的代码行。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.