【发布时间】:2013-04-28 20:45:53
【问题描述】:
将 WordPress 帖子作为纯数据结构使用的诀窍是什么?
传统上,您使用“循环”并通过以下函数输出数据:
<?php the_title(); ?>
<?php the_content(); ?>
这些函数将文本直接转储到响应中。
使用 $wpdb,我可以返回一组这样的帖子:
$posts = $wpdb->get_results("SOME SQL HERE", OBJECT);
然后我得到一个 stdClass 对象数组,我猜这些对象是……Post-ish。它们具有“post_title”等属性,但没有固定链接,这让我认为这不是要使用的“正确” Post 对象。此外,“post_content”不是完整的 HTML——它仍然有换行符等。
在迭代这个数组时,我发现我必须这样做:
foreach ($events as $post)
{
setup_postdata($post);
...
这会将帖子置于全局范围内。然后我可以使用上述函数写出内容,并使用这样的函数来获取元数据:
$display_date = get_custom_field('display_date');
有没有更好的方法?这看起来……很奇怪。有没有办法将帖子完整表示为一个对象,包含所有元数据以及我需要从数据级别操作它的所有其他内容,而不是仅仅假设我想将输出转储到响应?
【问题讨论】:
标签: wordpress