我如何才能正确地将wp-Hook入队而没有问题?

时间:2020-01-03 作者:Daniel M

我想提供包裹@wordpress/hooks 目前位于wp-includes/js/hooks.js 但我很难准确地找到它是如何排队的/在哪里排队的,这样我就可以复制这个文件,用我的插件提供它,如果它还没有排队,就自己排队。

我怎样才能做到这一点?

2 个回复
SO网友:Daniel M

我想出来了。为了给你一个冗长的解释hooks.js - wp-hooks 文件已注册为default_script 内部load-scripts.php 文件它被视为默认脚本,从5.0开始,它包含在每个安装中,但如果您希望将其用作4.9的独立脚本,请执行以下操作:

从以下位置获取分发文件:https://github.com/WordPress/WordPress/blob/master/wp-includes/js/dist/hooks.min.js (您需要巴贝尔的es-2015 polyfillforEachsome 据我所知,你的东西是否将用于<;=IE11)wp-hooks.。。。希望没有冲突。

就是这样。您现在可以访问wp-hooks.

SO网友:Philipp

do not copy the file 但请使用WordPress库。复制挂钩时。js文件,当另一个脚本加载官方挂钩时,您会遇到一个巨大的问题。同一页面上的js脚本。第二个脚本将替换wp。钩子第一个脚本的逻辑(可能会删除已经添加的任何JS钩子)。甚至更糟的是,您将收到一个JS错误,页面无法初始化。

WP构建了一个优秀的逻辑,将javascript排队,让您定义依赖关系(即,告诉WP需要加载哪些脚本,以及加载顺序)

很容易申报wp-hooks 脚本的依赖项,通过third parameter 属于wp_enqueue_script().

例如:

<?php
wp_enqueue_script(
    \'your-script\',
    \'url/to/js/your-script.js\',
    [ \'wp-hooks\' ] // ← add this parameter.
);
现在,WordPress将在脚本之前自动加载“wp hooks”。js已加载。

第二个最佳选项是手动加载原始文件wp-hooks 没有依赖项的脚本。您可以这样编写上述代码:

<?php
// Manually load the wp-hooks script.
wp_enqueue_script( \'wp-hooks\' );

// Later enqueue your-script.js, with the guarantee that wp-hooks is also loaded
wp_enqueue_script( \'your-script\', \'url/to/js/your-script.js\' );
这种方法的好处:

无重复脚本问题

相关推荐

我如何才能正确地将wp-Hook入队而没有问题? - 小码农CODE - 行之有效找到问题解决它

我如何才能正确地将wp-Hook入队而没有问题?

时间:2020-01-03 作者:Daniel M

我想提供包裹@wordpress/hooks 目前位于wp-includes/js/hooks.js 但我很难准确地找到它是如何排队的/在哪里排队的,这样我就可以复制这个文件,用我的插件提供它,如果它还没有排队,就自己排队。

我怎样才能做到这一点?

2 个回复
SO网友:Daniel M

我想出来了。为了给你一个冗长的解释hooks.js - wp-hooks 文件已注册为default_script 内部load-scripts.php 文件它被视为默认脚本,从5.0开始,它包含在每个安装中,但如果您希望将其用作4.9的独立脚本,请执行以下操作:

从以下位置获取分发文件:https://github.com/WordPress/WordPress/blob/master/wp-includes/js/dist/hooks.min.js (您需要巴贝尔的es-2015 polyfillforEachsome 据我所知,你的东西是否将用于<;=IE11)wp-hooks.。。。希望没有冲突。

就是这样。您现在可以访问wp-hooks.

SO网友:Philipp

do not copy the file 但请使用WordPress库。复制挂钩时。js文件,当另一个脚本加载官方挂钩时,您会遇到一个巨大的问题。同一页面上的js脚本。第二个脚本将替换wp。钩子第一个脚本的逻辑(可能会删除已经添加的任何JS钩子)。甚至更糟的是,您将收到一个JS错误,页面无法初始化。

WP构建了一个优秀的逻辑,将javascript排队,让您定义依赖关系(即,告诉WP需要加载哪些脚本,以及加载顺序)

很容易申报wp-hooks 脚本的依赖项,通过third parameter 属于wp_enqueue_script().

例如:

<?php
wp_enqueue_script(
    \'your-script\',
    \'url/to/js/your-script.js\',
    [ \'wp-hooks\' ] // ← add this parameter.
);
现在,WordPress将在脚本之前自动加载“wp hooks”。js已加载。

第二个最佳选项是手动加载原始文件wp-hooks 没有依赖项的脚本。您可以这样编写上述代码:

<?php
// Manually load the wp-hooks script.
wp_enqueue_script( \'wp-hooks\' );

// Later enqueue your-script.js, with the guarantee that wp-hooks is also loaded
wp_enqueue_script( \'your-script\', \'url/to/js/your-script.js\' );
这种方法的好处:

无重复脚本问题

相关推荐