我注册了一个新的自定义帖子类型:
register_post_type('abcd_film',
array(
'labels' => array(
'name' => __( 'Films' ),
'singular_name' => __( 'Film' )
),
'description' => 'Manage the Films',
'supports' => array( 'title', 'editor', 'custom-fields', ),
'public' => true,
'has_archive' => true,
'rewrite' => array('slug' => 'films'),
)
);
我的 WordPress 位于(虚拟链接):
www.example.com/folder/wordpress/
我的永久链接设置是(“帖子名称”选项):
www.example.com/folder/wordpress/%postname%/
但是,我在自定义帖子类型“电影”下创建了一个新的自定义帖子,帖子名称为“Apple”,链接显示404 File Not Found。该.htaccess
文件可由 WordPress 写入,而 WordPress 写入的当前内容为:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /folder/wordpress/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /folder/wordpress/index.php [L]
</IfModule>
# END WordPress
我仔细检查了phpinfo()
,mod_rewrite()
模块在“加载模块”部分。另外,我尝试刷新 WordPress 中的永久链接设置Admin > General > Permalink > Save Changes
。
404 Not Found 仍然存在。我还可以做些什么?
尝试了以下方法:
将
publicly_queryable
值添加true
到选项数组(它不是必需的,因为public
已经设置为true
并且默认值publicly_queryable
等于的值public
)将
with_front
值添加true
到rewrite
子数组( * 它也不是必需的,因为默认值为with_front
istrue
)flush_rewrite_rules(false);
之后添加register_post_type()
以上所有尝试均无效。缓存已被禁用和刷新。
参考问题: