在 WordPress 的父帖子页面上显示子帖子

2023-12-25

我们当前的网站使用带有父/子帖子的自定义帖子。 查看(父)帖子时,会使用插件来拉取其子帖子,并将这些子帖子显示在页面上的选项卡中。

我们现在在多个网站上使用该自定义主题的新版本,并且不再使用父/子关系。相反,我们在自定义帖子类型中有元框,所有附加信息都可以在那里归档。

我想用最新版本的主题更新这个特定的网站,但由于它使用父/子关系,我想向主题添加几行代码,以达到相同的结果并保持旧帖子的方式而不是全部修改它们。

这就是我想要做的:我想要一种非常简单的方法来在父帖子页面上显示所有子帖子(按顺序)。

我到处发现了一些想法,但到目前为止似乎没有一个可行。 (这里有一个例子:http://www.wpbeginner.com/wp-tutorials/how-to-display-a-list-of-child-pages-for-a-parent-page-in-wordpress/ http://www.wpbeginner.com/wp-tutorials/how-to-display-a-list-of-child-pages-for-a-parent-page-in-wordpress/还有这个https://wordpress.stackexchange.com/questions/153042/how-to-display-list-of-child-pages-with-parent-in-wordpress https://wordpress.stackexchange.com/questions/153042/how-to-display-list-of-child-pages-with-parent-in-wordpress)。我不知道这是否与我使用帖子而不是页面有关。

我不需要子帖子的列表,而是直接显示这些内容的内容。我认为实现此目的的最佳方法可能是创建一个函数来检索子帖子,然后在模板中回显结果。这样,无需更改我们的主题,它就可以与我们不同的网站一起使用。

EDIT :

到目前为止,这是我在 single.php 中尝试过的:

$query = new WP_Query( array( 
    'post_parent' => get_the_ID(),
 ));
while($query->have_posts()) {
    $query->the_post();
    the_content(); //Outputs child's content as it is
}
wp_reset_query();`  

然后我将代码更改为:

$new_args = array(
'order'          => 'ASC',
'post_parent'    => get_the_ID()
);
$new_query = new WP_Query( $new_args);
if ($new_query->have_posts() ) {
    while($new_query->have_posts() ) {
        $new_query->the_post();
            the_content();
    }
wp_reset_query();
}

然后由于它不起作用,我将其更改为:

$children = get_children( array('post_parent' => get_the_ID()) );
foreach ( $children as $children_id => $children ) {
    the_title();
    the_content();
}

最新的似乎能够返回一些结果,它“知道”当前帖子中有子项,但我正在显示当前帖子的标题和内容。我很确定我不应该使用the_content()在这里。


好的,在循环中的帖子模板中尝试类似的操作。它应该可以帮助您在特定帖子中输出子帖子。 循环中的某个地方/

    $query = new WP_Query( array( 
        'post_parent' => get_the_ID(),
        'posts_per_page' => 3, //shows only 3 children. If you want to show all of them, comment this line
    ));
    while($query->have_posts()) {
        $query->the_post();
        /*Output the child markup here*/
        the_content(); //Outputs child's content as it is
    }
    wp_reset_query();
?>

更新: 好的,你可以尝试使用 post_parent__in 和 ID 数组,这应该也有效。 循环中的某个地方/

    $query = new WP_Query( array( 
        'post_parent__in' => array(get_the_ID()),
        'posts_per_page' => 3, //shows only 3 children. If you want to show all of them, comment this line
    ));
    while($query->have_posts()) {
        $query->the_post();
        /*Output the child markup here*/
    }
    wp_reset_query();
?>

如果没有,这里是使用 get_children 函数输出您获得的帖子内容的方法。这可能也应该有效

<?php
    $children = get_children( array('post_parent' => get_the_ID()) );
    foreach ( $children as $children_id => $child ) {
        echo $child->post_title;
        echo str_replace( ']]>', ']]&gt;',apply_filters( 'the_content', $child->post_content )); //mimic the_content() filters
        //echo $child->post_content; // if you do not need to filter the content;
    }
?>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 WordPress 的父帖子页面上显示子帖子 的相关文章

  • 尝试使用curl进行GET,发送的值允许为空

    我正在尝试使用curl 来执行一个简单的GET 其中包含一个名为redirect uri 的参数 被调用的 php 文件打印出 GET redirect uri 的空字符串 它显示 red 并且似乎没有发送任何内容 执行获取操作的代码 Ge
  • 通过“SELECT”命令选择每组的前两条记录的最佳方法是什么?

    例如我有下表 id group data 1 1 aaa 2 1 aaa 3 2 aaa 4 2 aaa 5 2 aaa 6 3 aaa 7 3 aaa 8 3 aaa 通过 SELECT 命令选择每组的前两条记录的最佳方法是什么 如果没有
  • 如何上传图像代码并将路径保存到mysql数据库中

    如何编写代码上传图像并将路径保存到mysql数据库中 我已经尝试过 但没有一个有效 一种方法是上传图像并将其存储在服务器上的文件夹中 并将名称保存到 mysql 数据库中 这是一个例子 首先我们将创建一个用于上传的表单 文件 html Up
  • 使用 imagettftext 字体时出现问题

    这是当我更改有效网站的环境时收到的错误消息 Warning imagettftext function imagettftext Could not find open font 首先我以为这是因为缺乏文件权限 但事实并非如此 我检查了路径
  • PHP Imagick - “-量化透明”等效项

    是否有 PHP Imagick 等效项 quantize transparent 量化透明使用示例 http www imagemagick org Usage quantize color trans注意 在页面中搜索 量化透明 Quan
  • 递归替换多维数组中特定键每次出现的值

    我有一个数组 其数组深度可能会有所不同 例如 array one gt array array something gt value array something2 gt value2 another gt anothervalue tw
  • 使用 jquery 迭代 json 数组

    已经有一些帖子和我遇到了类似的问题 如何使用 PHP 中的 jQuery AJAX 调用迭代 JSON 数组 https stackoverflow com questions 6472338 how do i iterate over a
  • 如何从 php 代码更改 php 设置?

    我想更改 php 设置 但从 php 页面而不是 php ini 更改 我要更改的设置是 upload max filesize post max size and memory limit 如果您有AllowOverride 选项 您可以
  • 为什么我的变量超出范围? PHP

    语言是 Apache 2 2 服务器上的 PHP 5 4 这是一个由ajax调用的脚本 usr new User function getMyName echo usr gt username getMyName 由于某种原因 name 超
  • PHP 中比较运算符“==”的混淆

    In PHP null 0 0 0 如果将这两者结合起来 您会期望 null 0 但是这是错误的 有人可以向我解释一下吗 在第一种情况下 null 0 null评估为false 与 一样0其评估结果为false 所以两者都是false所以比
  • PHP 中的 GOTO 命令?

    我听说 PHP 计划引入 goto 命令的传言 它应该做什么 我尝试搜索了一下 但没有找到任何具有描述性的内容 我明白这不会是 GOTO 10 类似命令 They are not adding a real GOTO but extendi
  • PHP:检测USB设备

    我正在尝试使用 PHP 将用户名和密码存储到 USB 拇指驱动器上的文本文件中 因此 当用户返回使用 USB 密钥登录时 应该会打开一个弹出窗口 并提示输入用户名和密码 所以我的问题是如何使用 PHP 检测 USB 拇指驱动器 所以客户端或
  • 如何使用php api检查电子邮件或手机paypal帐户状态?

    如何使用 php api 检查电子邮件或手机 Paypal 帐户状态 好的 如果我想汇款到此电子邮件贝宝 email protected cdn cgi l email protection 或手机 1234567890 汇款前 我可以检查
  • 在 Woocommerce 商店页面中显示可变产品的默认变化价格

    I m wondering how I can display the product price on the shop page Right now my variable products are shown with their p
  • PHP使用正则表达式查找字符串

    我已经阅读了多个有关正则表达式的教程 但它只是不会留在我的脑海中 我永远无法让我的模式发挥作用 希望有人能帮忙 我有一个 php 变量 content 我需要在其中找到如下所示的特定模式 图库 名称 文件夹 我想搜索 starting wi
  • 向 tk103 GPS 跟踪器发送命令

    我正在使用 php 开发实时 GPS 跟踪器 Web 应用程序 跟踪器参考号是tk103 我可以从跟踪器接收信息并将其存储到数据库中 设备的 GPRS 模式已启用 我的问题是 如何使用 php ini 将命令从服务器发送到设备 提前致谢 这
  • 在仅包含键的字符串的嵌套数组中查找值

    我有一个数组 其中包含一些设置 基本上如下所示 defaults array variable gt value thearray gt array foo gt bar myvar gt array morevars gt moreval
  • 在订单项目视图中显示自定义产品数据

    我在添加到购物车时遇到问题 我有一个具有不同定制条件的产品可供选择 当客户选择特定选项时 它添加到购物车 当客户选择另一种选择并添加时 它显示为购物车中的第二件商品 这没关系 但付款后 订单在第 1 项和第 2 项下均显示自定义选项 但没有
  • Mysqli 准备好的语句从数组动态构建 INSERT 查询

    我正在尝试用 PHP 而不是 OOP 开发我的函数 以创建 CRUD 目标是对任何表使用相同的函数 但我已经陷入了第一个表中 不知道该怎么做 我现在拥有的 function to avoid injections function vali
  • 是否需要使用fetch_object或fetch_array?

    我最近发现我可以打印数据库中的结果而不使用mysqli fetch object功能 例如 假设我们有一个简单的 sql select 语句 可以使用如下所示的语句来执行 conn mysqli connect localhost root

随机推荐

  • 批处理 for 循环内存泄漏?

    我正在编写一个批处理脚本 它会遍历目录中的每个文件 查找代码文件并以某种方式修改它们 完成该任务后 我尝试在包含大约 6 000 个文件的大目录上运行它 大约 40 分钟的脚本崩溃了 我从命令提示符处收到了很多内存不足的错误 运行脚本的同时
  • 无法将“...”类型的值添加到“UIElementCollection”类型的集合或字典中

    当我通过 XAML 添加自定义控件时 出现以下错误 可能的原因是什么 A value of type cannot be added to a collection or dictionary of type UIElementCollec
  • 如何正确管理屏幕上的精灵组

    我正在用 Swift 构建我的第一个游戏 我想知道如何同时处理多个屏幕精灵 我的游戏将精灵推到屏幕上addChild连续的 所以同时有很多活跃的 我意识到我没有同时影响所有敌人的正确方法 就像我想同时影响所有敌方精灵的物理属性一样 到目前为
  • 简单银行账户的派生账户余额与存储账户余额?

    就像我们普通的银行账户一样 我们有大量的交易 导致资金流入或流出 账户余额始终可以通过简单地总结交易价值来得出 将更新后的账户余额存储在数据库中还是在需要时重新计算 哪一个更好 每个账户的预期交易量 每日 预期检索账户余额 每当交易发生时
  • 如何在 Flutter 中对 JSON 数据进行文本搜索?

    我正在开发一个应用程序 该应用程序需要从 firebase 存储中获取一些 JSON 数据 然后用户可以对其执行搜索 但是 我的搜索查询无法正常工作 并且在多次执行搜索时出现一个错误 我首先将数据上传到 firebase 存储 然后提取它
  • 无法初始化 FirebaseApp - Flutter

    我的项目突然停止正常运行 它无法初始化 FirebaseApp 我一直在使用老式的 Firebase 配置 直接从 Firebase 控制台使用 Google Services 文件 我切换到命令flutterfire configure但
  • 为什么 Git 会在没有询问我的情况下记住并使用中止的 rebase 中的冲突解决方案?

    我对我的分支做了变基foo git rebase master 做了一些冲突解决方案 然后决定我不想这样做 然后中止 git rebase abort 所有分支日志历史看起来都很正常 现在我想再次开始相同的过程 git rebase mas
  • OnClick 事件对列表视图项目重复

    我的应用程序中有一个列表视图 每个列表视图行都会在点击时展开 并且隐藏视图变得可见 但问题是隐藏视图对于列表中的许多其他项目也变得可见 我知道这种行为的原因 但不知道如何解决 这是我的适配器类 public class ScheduleTa
  • 即使没有断点,Chrome 调试器也会暂停?

    检查此站点时 即使没有设置断点 脚本也始终在调试器中暂停 并且如果暂停未暂停 它会再次自行暂停 可以做什么 https i stack imgur com J84eU png https i stack imgur com J84eU pn
  • SELECT MAX 返回错误值

    我有一个 SQL 数据库 其中有一个名为premisis 我希望选择最高的行premisisnumber 这是我正在使用的 SQL SELECT max premisisnr AS premisisnr FROM premisis 问题是
  • 真正的path.py请站起来吗?

    有一个很好的模块 path py 由贾森 奥伦多夫撰写 如果我没记错的话 曾经有过一些关于将其添加到标准库的讨论 然后就消失了 现在看来 原来的产物有多种衍生产物 到目前为止我能找到unipath http pypi python org
  • AWS Beanstalk 在部署 Nodejs 应用程序时如何使用 NPM?

    我对 AWS Beanstalk 部署的整体工作流程感到好奇 我假设它在某个时刻运行 npm 来将软件包安装在服务器上 但我只是想知道 AWS Beanstalk 是否使用最新的 npm install product 命令来安装软件包 目
  • NAT 后面的 UDP 打洞

    我正在尝试用 Java 实现 UDP Holepunching 的简单草图来测试它的概念 并稍后在我的 C C 应用程序中使用它 Concept 根据维基百科 我对这个概念的理解是这样的 假设 A 和 B 是未定义网络结构后面的客户端 C
  • Firebase Angular 4基于节点环境初始化

    我已经使用 Angular CLI 构建了 Angular 4 项目 我正在 Heroku 上部署我的应用程序 我已经为开发和生产环境创建了 heroku 管道 我有两个 Firebase 数据库开发和生产 我希望我的 Angular 2
  • 从 JBoss EAP 6.1 中排除 JPA 子系统 - 尝试在 JBoss EAP 6.1 中使用 JPA 2.1

    我有一个 war 应用程序 其中包含使用 Spring 容器打包和引导的 JPA 2 1 API 和 Hibernate 4 3 0 Final JPA 2 1 实现 我想将其部署在 JBoss EAP 6 1 中 我知道 JBoss EA
  • 是否可以修改 Service Worker 缓存响应标头?

    我正在尝试标记存储在服务工作线程缓存中的资源 我认为可以向资源添加一个自定义标头来表明这一点 但是 一旦资源存储在服务工作线程缓存中 标头修改似乎就会被删除 是这样吗 我没有看到任何内容缓存规范 https www w3 org TR se
  • 再次显示相同的 AlertDialog

    我正在测试 AlertDialog 的行为以集成到更大的组件中 我无法再次显示相同的对话框 这是测试代码 public class MainActivity extends AppCompatActivity private AlertDi
  • 返回 id 并分割逗号分隔值的 SQL 语句

    我有一个包含以下数据的表 NodeId ExternalIds 50 601 56 700 701 如何编写分割ExternalIds列并返回的SQL语句 NodeId ExternalIds 50 601 56 700 56 701 我发
  • Google 日历活动的正确日期格式

    我正在尝试为 Google 日历创建活动 但收到此错误 Invalid value for T found can only parse bare date string 2013 08 22T16 00 00 我还尝试将时区偏移添加到我的
  • 在 WordPress 的父帖子页面上显示子帖子

    我们当前的网站使用带有父 子帖子的自定义帖子 查看 父 帖子时 会使用插件来拉取其子帖子 并将这些子帖子显示在页面上的选项卡中 我们现在在多个网站上使用该自定义主题的新版本 并且不再使用父 子关系 相反 我们在自定义帖子类型中有元框 所有附