微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

WordPress:在自定义帖子类型中获取模块名称的帖子

如何解决WordPress:在自定义帖子类型中获取模块名称的帖子

一个名为 Post Modules 或 post-modules 的自定义帖子类型。我使用高级自定义字段创建了许多可重复使用的模块,以允许我在另一个 CPT 中插入内容。每个模块基本上就是一个帖子。

我想要做的是在帖子模块中抓取帖子的 slug 并将其显示为我的部分中的一个类。所以它会是这样的:

<section class="post-module-name"></section>

帖子的标题也是可以接受的。

所以我想出了以下内容

<section class="toolkit-module scroll-section <?PHP echo $post->post_title; ?> <?PHP echo $module_type; ?>" data-index="<?PHP echo $i; ?>" data-module-id="<?PHP echo $module_id; ?>" data-module-type="<?PHP echo $module_type; ?>">Content Goes Here</section>

但这会拉出显示所有这些模块的帖子的标题,而不是模块slug/名称本身。

因此,如果我有一个名为“视频”的帖子,并且我有两个模块,比如说音乐视频和体育视频,我想在第一节的课程中加入音乐视频,在我的第二节中加入体育视频。

有什么方法可以从我实际从中提取数据的模块的帖子类型和名称提取帖子吗?

解决方法

查看 wp_query。您需要使用它来访问自定义帖子类型。

https://developer.wordpress.org/reference/classes/wp_query/

,

是的,如果您已经有一个 WP_Post 对象,您可以按如下方式使用它。

echo $post->post_type; // Outputs the actual type of a WP_Post object
echo $post->post_name; // Outputs the slug of the post;

您可以查看所有属性 here,在您的特定情况下,您需要以下内容:

<section class="toolkit-module scroll-section <?php echo $post->post_name; ?> <?php echo $post->post_type; ?>" data-index="<?php echo $i; ?>" data-module-id="<?php echo $post->ID; ?>" data-module-type="<?php echo $post->post_type; ?>">Content Goes Here</section>
,

看起来如果我使用 php echo $module_id;我可以显示模块的 ID 号,它至少会显示一些独特的东西。除了使用 module_type 和 module_id 之外,我仍然找不到任何关于如何访问 ACF 模块的文档。

,

找到了解决方案。做到了。

$module_slug = $module->post_name;

然后显示它:

<?php echo $module_slug; ?>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。