WP自定义帖子类型显示404错误的解决

2024-11-03 11 0

WordPress 自定义帖子类型(Custom Post Types)显示 404 错误通常是因为 permalink 结构或 .htaccess 文件配置不正确,或者 WordPress 没有正确地重写规则来识别自定义帖子类型。以下是一些解决这个问题的步骤:

  1. 更新 Permalink 结构

    • 进入 WordPress 后台,点击“设置” > “固定链接”。
    • 选择“朴素”结构,然后保存。
    • 再选择你想要的固定链接结构(如“文章名”),然后再次保存。
  2. 检查 .htaccess 文件

    • 确保你的 WordPress 安装目录中有一个名为 .htaccess 的文件。
    • 如果没有,创建一个新文件,并添加以下代码:
      # BEGIN WordPress
      <IfModule mod_rewrite.c>
      RewriteEngine On
      RewriteBase /
      RewriteRule ^index.php$ - [L]
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule . /index.php [L]
      </IfModule>
      # END WordPress
    • 将这个文件保存到你的 WordPress 安装目录中。
  3. 重新注册自定义帖子类型

    • 检查你注册自定义帖子类型的代码,确保它正确无误。代码应该类似于以下示例:
      function create_post_type() {
       register_post_type('custom_post_type',
           array(
               'labels' => array(
                   'name' => __('Custom Post Type'),
                   'singular_name' => __('Custom Post')
               ),
               'public' => true,
               'has_archive' => true,
               'rewrite' => array('slug' => 'custom-post-type'),
           )
       );
      }
      add_action('init', 'create_post_type');
    • 确保 'rewrite' => array('slug' => 'custom-post-type'), 中的 'slug' 与你想要的 URL 结构匹配。
  4. 刷新重写规则

    • 在 WordPress 后台,点击“设置” > “固定链接”,即使你没有改变结构,也点击“保存更改”。这会刷新 WordPress 的重写规则。
  5. 检查插件冲突

    • 如果你安装了任何缓存或安全插件,尝试暂时禁用它们,看看是否解决了问题。
  6. 检查主题

    • 有时候,主题的 functions.php 文件可能会干扰自定义帖子类型的重写规则。尝试切换到默认主题(如 Twenty Twenty-One),看看问题是否仍然存在。
  7. 增加内存限制

    • 有时 PHP 内存限制过低也会导致 404 错误。在 wp-config.php 文件中添加以下代码来增加内存限制:
      define('WP_MEMORY_LIMIT', '256M');

如果以上步骤都无法解决问题,可能需要更深入地检查服务器配置或联系你的主机提供商寻求帮助。

相关文章

WP 网站定时任务失败的处理方法
WP 内存限制不足导致网站挂起的解决策略
WordPress 媒体库上传文件失败的常见原因及解决方案
WP 插件冲突导致网站崩溃的修复方法
WP 登录页面出现 ‘抱歉,您不能在此站点进行此操作’ 错误的解决
WordPress 文章保存草稿时出现错误的解决步骤