为什么这个功能会使我的WordPress安装崩溃?

时间:2013-02-16 作者:cellsuicide

我对wordpress和编程都是新手。对于我的第一个站点,有一个自定义模板,我想在其中加载javascript库。在函数中注册并排队后。php my site不再正确加载。我确信这是一个简单的错误,非常感谢您的帮助。为了记录在案,我使用了一个儿童主题,即Twenty12。

代码如下:

<?php 
function load_wforms() {  
    if (is_page(45)) {  
        wp_register_script(\'wforms\', get_stylesheet_directory_uri().\'/js/wforms.js\'), false, \'2.0\');  
        wp_enqueue_script(\'wforms\');  
    }  
}  
add_action(\'init\', \'wforms\');  
?>
谢谢!

1 个回复
最合适的回答,由SO网友:Chip Bennett 整理而成

首先,确保启用WP_DEBUG 在您的wp-config.php 文件,以便您可以看到致命错误消息。

在这种情况下,问题是您已经命名了函数load_wforms(), 但你引用了回调wforms 在您的add_action() 电话:

function load_wforms() {}  
。。。vs。。。

add_action(\'init\', \'wforms\'); 
第二个参数,wforms, 引用名为wforms() - 但您的函数名为load_wforms(). 将add\\u操作更改为:

add_action( \'init\', \'load_wforms\' );
(旁注:您应该在wp_enqueue_scripts, 而不是init.)

编辑:修复@milo在评论中指出的语法错误:

wp_register_script(\'wforms\', get_stylesheet_directory_uri().\'/js/wforms.js\'), false, \'2.0\');
您有一个额外的括号:

\'/js/wforms.js\')
。。。应为:

\'/js/wforms.js\'

结束

相关推荐

Functions.php:从博客中排除类别

所以很明显,如何从模板中排除某些类别,但我不想修改4个模板,使它们忽略某个类别。有没有一种方法可以将某个类别从阅读设置的“博客”集中排除?我正在将博客分配到名为“博客”的页面。。。但显然,档案和搜索也需要对这一超出类别的内容视而不见。我宁愿在里面做functions.php