我似乎已经用尽了关于这个主题的所有参考资料,但如果这是一篇重复的帖子,我很抱歉。
我有一个问题,任何自定义贴子页面都会显示404。php文件的错误内容,无论使用何种方法。这包括简单地去做一些像http://domain.com/?p=123.
我已经做了以下工作:
刷新永久链接设置(虽然我认为这不是永久链接问题)
已删除。htaccess并通过转到设置->永久链接重新创建它,专门创建了一个-[名称]。任何给定类型的php文件都禁用了所有插件,检查是否存在任何页面/分类名称冲突(即使有随机名称也仍然失败)检查了服务器日志中是否有错误(自故障排除开始后无错误)将整个主题上载到不同的WP安装中,但均无效。我已将自定义后注册简化为一个尽可能简单的函数:
add_action(\'init\', \'init_sample\');
function init_sample() {
$args = array(
\'public\' => true,
);
register_post_type( \'sample\' , $args );
}
但无论是这一点,还是任何其他论点的组合,似乎都无济于事。即使单击admin中的“查看帖子”链接,也会导致404页面。
然而,我可以通过查询毫无问题地检索自定义帖子。
我正在运行WP v3。2.1。
如果非要我猜的话,我会说主题的其他地方有什么东西把事情弄糟了,但我不知道该去哪里找到答案——有谁能提供一些建议,甚至可以在哪里解决这个问题?
最合适的回答,由SO网友:Samuel Hulick 整理而成
我一问完问题,就去关闭函数。php,并碰巧注意到自定义帖子类型正在if (is_admin()) {
评估员。把他们从中解救出来就成功了。
Reasonably enough, it looks like custom posts MUST be registered in a publicly-accessible manner.
一定有这样一条定律,即不管在堆栈交换问题之前花费多少时间,解决方案都会在被问及后几分钟内呈现出来。