Wordpress试图获取不存在类别的存档
简而言之,我将一些文章从默认文章类型移动到了自定义文章类型。现在,可以使用旧的Wordpress试图获取不存在类别的存档,wordpress,Wordpress,简而言之,我将一些文章从默认文章类型移动到了自定义文章类型。现在,可以使用旧的www.example.com/articleurl/和新的www.example.com/blog/articleurl/URL访问我的文章 有一个问题:客户端添加了一篇url为“2093”的文章。您可以使用www.example.com/blog/2093/访问它。但是,当我尝试使用www.example.com/2093/wordpress获取2093年的档案或类别(顺便说一下,没有这样的类别),然后重定向到索引
www.example.com/articleurl/
和新的www.example.com/blog/articleurl/
URL访问我的文章
有一个问题:客户端添加了一篇url为“2093”的文章。您可以使用www.example.com/blog/2093/
访问它。但是,当我尝试使用www.example.com/2093/
wordpress获取2093年的档案或类别(顺便说一下,没有这样的类别),然后重定向到索引页
那么如何解决这个问题呢
不,我不能更改这篇文章的url。我需要离开它2093
是的,我需要我的站点的这个层次结构,我需要自定义帖子类型。在主题根目录中创建一个名为archive-2093.php的文件,并添加以下代码:
<?php
$args = array (
'name' => '2093',
'post_type' => array( 'blog' ),
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
// adapt the following to suit the formatting and fields of your post.
the_title();
the_content();
}
} else {
// oh no, it didn't work.
}
// Restore original Post Data
wp_reset_postdata();
Wordpress不在/2093上提供页面是有道理的。将页面放在/blog/2093和/2093将被视为重复内容,这是不明智的SEO建议。(可以使用规范标记修复)
上面的解决方案建议您使用一个新的模板文件,这将在维护中增加。我的建议是简单地添加一个从/2093到/blog/2092的重定向。在Wordpress尝试将其解析为存档之前,此重定向应该可以工作。您可以在.htaccess文件中执行此操作,但我建议使用重定向插件。(Yoast已将此包括在内)
如果需要URL as/2093,只需将其添加为常规页面而不是博客项目。Viper007Bond创建了一个插件,可以帮助解决您的问题
此外,如果您共享正在使用的permalink结构,这将非常有用
祝你好运