
本文详细介绍了如何在 WordPress 父页面上显示子文章。通过自定义 WP_Query 查询,您可以轻松地在父页面中展示与其相关的子文章列表,并提供子文章的标题和链接。本文提供了经过验证的代码示例,并解释了关键参数的作用,帮助您避免常见错误,快速实现所需功能。
在 WordPress 中,有时需要在父页面上展示其子页面或子文章。以下代码展示了如何使用 WP_Query 来实现这一功能,并提供了一个可直接使用的示例。
实现方法
核心思路是利用 WP_Query 查询特定 post_parent 的文章。post_parent 参数允许我们指定要检索其子文章的父文章 ID。
代码示例
以下代码片段展示了如何在父页面中显示子文章:
模板采用响应式设计,自动适应手机,电脑及平板显示;满足单一店铺外卖需求。功能:1.菜单分类管理2.菜品管理:菜品增加,删除,修改3.订单管理4.友情链接管理5.数据库备份6.文章模块:如:促销活动,帮助中心7.单页模块:如:企业信息,关于我们更强大的功能在开发中……安装方法:上传到网站根目录,运行http://www.***.com/install 自动
'custom-post-type-name', // 替换为你的文章类型
'posts_per_page' => 15, // 显示的文章数量
'post_parent' => $post->ID, // 当前父文章的 ID
'order' => 'ASC', // 排序方式,这里是升序
);
$parent = new WP_Query( $args );
if ( $parent->have_posts() ) :
while ( $parent->have_posts() ) :
$parent->the_post();
?>
代码解释
- $args 数组:定义了 WP_Query 的查询参数。
- post_type: 指定要查询的文章类型。请将其替换为你的自定义文章类型名称,或者使用默认的 'post'。
- posts_per_page: 指定每页显示的文章数量。-1 表示显示所有子文章。
- post_parent: 关键参数,设置为 $post->ID,表示查询当前父文章的子文章。
- order: 指定排序方式,'ASC' 表示升序,'DESC' 表示降序。
- $parent = new WP_Query( $args );: 创建一个新的 WP_Query 对象,并传入查询参数。
- if ( $parent->have_posts() ) :: 检查是否有符合条件的子文章。
- while ( $parent->have_posts() ) :: 循环遍历所有子文章。
- $parent->the_post();: 设置当前文章的数据,以便在循环中使用模板标签。
- : 创建一个 div 容器,用于包裹子文章的标题和链接。the_ID() 函数输出当前文章的 ID,可以用于创建唯一的 ID。
: 显示子文章的标题,并创建一个链接到子文章的永久链接。
使用方法
- 将以上代码复制到你的 WordPress 主题的父页面模板文件中,例如 page.php 或自定义的父页面模板。
- 将 'custom-post-type-name' 替换为你的实际文章类型。
- 根据需要调整 posts_per_page 和 order 等参数。
注意事项
- 确保在循环中使用 $parent->the_post();,否则模板标签(如 the_title() 和 the_permalink())将无法正确工作。
- 如果父页面没有显示任何子文章,请检查 post_parent 是否正确设置为父文章的 ID,以及子文章是否已正确关联到父文章。
- 如果使用了自定义文章类型,请确保该文章类型已正确注册,并且子文章的 post_parent 字段已正确设置。
- 这个代码片段只是一个基本示例,你可以根据自己的需求进行修改和扩展,例如添加子文章的摘要、缩略图等。
总结
通过使用 WP_Query 和 post_parent 参数,可以轻松地在 WordPress 父页面上显示子文章。以上代码示例提供了一个清晰的起点,你可以根据自己的需求进行修改和扩展,以实现更复杂的功能。 记住要替换文章类型,并确保正确设置了父子关系。









