在Wordpress中放置自定义函数的位置?

时间:2011-04-14 18:26:28

标签: php wordpress function

我正把头发拉出来。我已经创建了一些简单的函数来生成随机数,从我想在wordpress页面上使用的数据库中提取。 (然后从主题文件中调用它们,例如header.php或page.php。)

我已经尝试将函数放在主题中的functions.php中(根据我读过的文档),但我不断收到“调用未定义函数”错误!世界上我做错了什么?

例如,这是functions.php

中的一个函数
function randomPollNumber() {
///this gets a random active poll number
    $sql12 = "SELECT id FROM poll WHERE removed = 0 AND active = 1 ORDER BY RAND() LIMIT 1";
    $result12 = mysql_query($sql12);
    $myrow12 = mysql_fetch_row($result12);
    $pollquestionid = $myrow12[0];
    return $pollquestionid;
}

我正在使用此

从header.php文件中调用它
<?php echo randomPollNumber(); ?>

是的,我DID尝试使用if_function_exists,但当然它无法找到函数,所以它当然不存在。请帮帮忙?

1 个答案:

答案 0 :(得分:1)

非常奇怪 - 一些调试技巧:

  1. 在functions.php的开头放置die('functions.php file loaded')语句(不在函数内)。如果它没有死,你知道文件没有被加载。
  2. 如果它死了,那么检查你的拼写(将函数名称从functions.php复制并粘贴到你的echo [...]中)。令人惊讶的是,有多少次我确实拼错了它,事实上我还没有。
  3. 如果它没有死,请检查你的文件是否被称为functions.php,它肯定在你正在编码的主题的正确主题文件夹中。
  4. functions.php文件可能有错误,因此没有被解析,因此Wordpress无法找到该函数。检查日志中的错误。加载函数文件,没有其他任何内容,并检查该函数是否正常工作。您使用的是PHP Unit还是类似的东西?