我有一个设置了一些静态页面的WordPress页面,其中之一是www.mysite.com/courses 该页面加载了一个自定义模板,该模板从数据库中获取活动课程的列表,并将它们列出得很漂亮。
点击课程时,您将被引导至www.mysite.com/courses/34/,并且将加载另一个模板,该模板显示具有该ID的课程的课程数据。
这是我的代码:
<?php
/**
* Header content
*/
get_header();
if ( $post->post_name === 'courses' ):
if ( preg_match('/^\/courses\/[0-9]+\/$/', $_SERVER['REQUEST_URI']) || preg_match('/^\/courses\/[0-9]+\/?.+$/', $_SERVER['REQUEST_URI']) ):
include 'pages/courses/view-single.php';
else:
include 'pages/courses/view.php';
endif;
elseif ( $post->post_name === 'contact' ):
include 'pages/contact.php';
elseif ( $post->post_name === 'course-offers' ):
include 'pages/offers.php';
else:
include 'pages/default-post-view.php';
endif;
/**
* Footer content
*/
get_footer();
在我从v5.1升级到最新版本的WordPress(5.5)之前,此方法可以立即使用,无需更改任何特殊设置,但是,更新后,WordPress只是重定向回到原始课程页面(mysite。 com / courses)
我试图弄乱WordPress中的永久链接设置无济于事。
我在这里做错了什么?是否可以以其他方式执行此操作?如何再次获得类似的功能?