我创建了一个短代码[get_custom_posts]
插入到页面中(默认page
从WordPress获取帖子类型),以获取来自自定义帖子类型的帖子。
在该自定义帖子类型的每个帖子中,用户可以插入一个快捷码[get_attached_images]
获取分配给该特定帖子的附件(图像)。此短代码获取图像的方式是使用全局$post
变量然后,它基本上得到了贴在那篇文章上的所有图像,没有什么太奇怪的。
问题在于获取这些帖子的快捷码([get_custom_posts]
). 它不会返回显示这些自定义帖子及其图像附件(使用[get_attached_images]
). 相反,它会显示带有属于页面的附件的自定义帖子(!)不适用于各岗位。
发生的是全球$post
中使用的变量[get_attached_images]
shortcode在某种程度上是$post
输出所有这些帖子的页面的变量。
方式[get_custom_posts]
shortcode的工作原理是获取属于我想要从中获取帖子的自定义帖子类型的所有帖子。然后使用the_content
筛选以“执行”[get_attached_images]
来自这些自定义帖子的短代码。通过这种方式,可以显示帖子(至少理论上)及其附件。但在实践中,这是行不通的。
有人知道发生了什么事吗?为什么$post
传递给的页的变量[get_attached_images]
shortcode而不是每个自定义帖子的$post变量?如何预防这种情况?