WordPress的the_author()和wp_get_archives()不工作

问题描述:

首先,我不是新鲜面对WordPress,自早期的1.x版本以来,我一直在积极地将它用于各种轻量级定制CMS。WordPress的the_author()和wp_get_archives()不工作

我正在使用2.8.6的新版本构建一个非常非常简单的博客。只有一个类别,只有一个“单个”模板。没有其他功能,所以该网站只需要主题目录中的index.php和single.php文件。

问题: the_author()在single.php上不起作用,只能在index.php上部分工作。部分地,我的意思是这些标签适用于循环中的第一项,但之后不起作用。

wp_get_archives()在边栏中没有显示任何内容,即使在今年5月向后发布的博客中有14篇测试文章。

错误描述: 来自这些标记的'echo'的神秘缺乏并不会暂停加载页面。我的CSS模板显示正常(并且它不是CSS隐藏任何东西)。这些标签只是没有输出到屏幕上。

我曾尝试的补救措施: 我试过使用get_userdata()与帖子作者,但即使这不起作用。我可以从数据库($post->author_id)中获得帖子author_id,但get_userdata()在single.php中提供此变量或循环中第一个后的任何帖子时不会返回任何内容。

我也试过了所有的标准跟踪解决方案,如print_r(),并试图让函数返回一个变量来分析它的内容 - 没有运气。

如果任何人有任何想法可能造成这种情况,请联系!我以前从来没有像这样使用WordPress的愚蠢问题。谢谢。

+0

只是检查,但你确定你的电话是在循环? – 2009-12-16 09:54:44

+0

嗨K总理 - 是的 - 绝对在循环内! – Aaron 2009-12-16 09:55:50

+0

轻便?哦,以及...;) – Franz 2009-12-16 10:08:02

找出发生了什么事(ish)。

我使用自定义的PHP类来提供一些额外的功能,我可以在很多地方重复使用。这个类使用它自己的数据库连接,由于某种原因,当调用mysql_close()时,它会终止由the_author()和wp_get_archives()所做的调用。

可能可以使用$ wpdb解决这个问题,但不知道集成这个有多麻烦。

无论如何,希望这可以帮助别人。

在这种情况下,您的班级使用$ wbdb-> dbh作为其连接句柄。这样,只有一个数据库连接打开,并在WordPress和你的班级之间共享。