我不知道你为什么用exit() in your
reactivatejs()`方法,因为这会在加载脚本之前破坏该方法(希望这是为了调试)。
我也确实认为,没有必要为此创建一个类,一个简单的意大利面函数就可以做到最好。无论如何,如果您需要使用一个类,那么该类的构造函数不应该起任何作用,而是应该初始化该类。您可能希望在构造函数之外执行操作。此外,在删除脚本和样式时,您可能希望取消注册并退出队列。
以下是可能的解决方案:
闭包-不建议使用,因为它们无法移除
add_action( \'wp_enqueue_scripts\', function ()
{
// Remove your script
wp_dequeue_script( \'twentyfourteen-script\' );
wp_deregister_script( \'twentyfourteen-script\' );
// Add new script
wp_enqueue_script( \'lets-be-unique-here\', get_stylesheet_directory_uri() . \'/js/functions.js\', [\'jquery\'], \'20140616\', true );
}, 100 );
普通意大利面
add_action( \'wp_enqueue_scripts\', \'addjs\', 100 );
function addjs()
{
// Remove your script
wp_dequeue_script( \'twentyfourteen-script\' );
wp_deregister_script( \'twentyfourteen-script\' );
// Add new script
wp_enqueue_script( \'lets-be-unique-here\', get_stylesheet_directory_uri() . \'/js/functions.js\', [\'jquery\'], \'20140616\', true );
}
外部动作类
class AddJS
{
public function addjs ()
{
// Remove your script
wp_dequeue_script( \'twentyfourteen-script\' );
wp_deregister_script( \'twentyfourteen-script\' );
// Add new script
wp_enqueue_script( \'lets-be-unique-here\', get_stylesheet_directory_uri() . \'/js/functions.js\', [\'jquery\'], \'20140616\', true );
}
}
THEN
add_action( \'wp_enqueue_scripts\', [\'AddJS\',\'addjs\'], 100 );
OR
$addjs = new AddJS();
add_action( \'wp_enqueue_scripts\', [$addjs,\'addjs\'], 100 );
类中有动作的类
class AddJS
{
public function addAction ()
{
add_action( \'wp_enqueue_scripts\', [$this,\'addjs\'], 100 );
}
public function addjs ()
{
// Remove your script
wp_dequeue_script( \'twentyfourteen-script\' );
wp_deregister_script( \'twentyfourteen-script\' );
// Add new script
wp_enqueue_script( \'lets-be-unique-here\', get_stylesheet_directory_uri() . \'/js/functions.js\', [\'jquery\'], \'20140616\', true );
}
}
$addjs = new AddJS();
$addjs->addjs();