WordPress自定义主题转到404.php

时间:2018-05-09 06:35:27

标签: php wordpress wordpress-theming

我创建了一个自定义主题(现在)没什么特别之处。我的functions.php只包含wp_enqueue_scripts的动作挂钩,我有以下文件:

的header.php

<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
    <meta charset="<?php bloginfo( 'charset' ); ?>">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="profile" href="http://gmpg.org/xfn/11">
    <?php wp_head(); ?>
</head>
<body <?php body_class(); ?>>

的index.php

<?php
get_header(); ?>
INDEX
<?php get_footer(); ?>

footer.php

<?php wp_footer(); ?>
</body>
</html>

archive.php

<?php get_header(); ?>
ARCHIVE
<?php get_footer(); ?>

404.php

<?php get_header(); ?>
404
<?php get_footer(); ?>

的functions.php

<?php
# WP Basics
//include_once(get_stylesheet_directory() . "/functions/menus.php" );
include_once(get_stylesheet_directory() . "/functions/scripts.php" );

现在我有以下问题,当我转到首页时它显示正确的页面,但是当我到达任何其他页面,存档,或者它在404.php中结束了什么。

我确实检查了以下内容:

  1. 禁用所有插件(无结果)
  2. 启用默认主题(二十七,一切都很好)
  3. 永久链接已开启&#34; /%postname%/&#34;当我把它设置为&#34; plain&#34;一切正常
  4. 检查某个地方是否有.htaccess不属于(不是
  5. 检查文件名是否正确(它们是)
  6. 所以不用说我真的卡住了,我已经制作了几个自定义主题,之前从未遇到过这个问题。有没有人有任何想法?

    亲切的问候,

    安格斯

2 个答案:

答案 0 :(得分:0)

您在主题中缺少style.css文件,因为您没有提及style.css。

而style.css是在wordpress中创建主题最需要的文件,所以请在你的主题中添加style.css,它肯定会有效。

答案 1 :(得分:0)

好吧,所以我修好了,谢谢你的帮助。

我添加了一条不正确的重写规则,然后我再次将其删除。但不知怎的,这次改写并没有消失,只对我的主题有效。

我假设当我再次保存永久链接时,重写规则被刷新,但事实并非如此。所以我将以下代码片段添加到我的functions.php中并且有效。

add_action( 'init', 'shoe_flush_rewrite_rules' );


function shoe_flush_rewrite_rules() {
    flush_rewrite_rules();
}

请记住,当所有内容再次有效时,请删除此代码段,因为它不需要每次都运行。