激活我的设置插件时,我不断收到白页

时间:2016-06-19 16:05:24

标签: wordpress

我是wordpress的新手,我正在尝试创建一个简单的传递设置插件,将其添加到常规部分。一旦我点击激活,我就会看到一个白色的屏幕。我不确定我做错了什么。任何帮助将非常感激。谢谢!

function delInfoSec()
{
    add_settings_section("delivery_info", "Delivery Info", "delInfoHtml", "general");
}


add_settings_field("min_del","Minimum Delivery","minDelCallBack","general","delivery_info");


register_setting("general","min_del");

add_action("admin_init","delInfoSec");


function minDelCallBack(){

    echo "<h3>Enter minimum  delivery</h3>";

}


function delInfoHtml(){

    echo "<input type='text'>";
}

2 个答案:

答案 0 :(得分:1)

白页表示您的插件存在一些错误。请检查日志文件,它将告诉您页码上的确切错误与行号。如果每件事看起来都很好,请检查插件支持的php版本和运行服务器的php版本。有些时候php版本不匹配也会给你白页。

BR

答案 1 :(得分:1)

两个问题。第一个提示将帮助您解决前进问题:

要在开发过程中获得有用的调试信息,您应该修改wp-config.php文件。找到显示define('WP_DEBUG', FALSE);的行并将其更改为define('WP_DEBUG', TRUE); - 这将导致WordPress和PHP输出错误,以便您可以准确查看正在发生的事情。

您的代码问题是您无法在相应的挂钩之外调用其中的某些功能。除非您在“admin”中,否则它们不可用,因此您需要在admin_init内调用它们。

这篇文章涵盖了您在完整教程中尝试做的所有内容:http://code.tutsplus.com/tutorials/the-complete-guide-to-the-wordpress-settings-api-part-2-sections-fields-and-settings--wp-24619

您的代码应修改如下:

add_action("admin_init","delInfoSec");

function delInfoSec() {
    add_settings_section("delivery_info", "Delivery Info", "delInfoHtml", "general");
    // To add and register your settings, do it in the "admin_init" hook
    add_settings_field("min_del","Minimum Delivery","minDelCallBack","general","delivery_info");
    register_setting("general", "min_del");
}

function minDelCallBack() {
    echo "<h3>Enter minimum  delivery</h3>";
}

function delInfoHtml() {
    echo "<input type='text'>";
}