Wordpress - 引用get_post_meta内部&在循环之外吗?

时间:2011-10-06 19:39:11

标签: wordpress

我已成功创建了帖子元框,保存了数据并了解了如何检索数据。在自定义元框中,我有一个页面标记字段,用于决定我们在该页面上展示的产品系列的颜色方案。

我有一个按照颜色方案的类,当主体有一个附加了产品系列名称的类时触发。例如:

<body class="product-drinks">

OR

<body class="product-abcwidgets">

根据在该帖子的元框中选择的产品系列,将确定将包含哪个样式表。

例如,如果我选择“产品饮料”,那么所包含的样式表将是 product-drinks.css

我需要在循环中使用大多数元数据,但我还需要在循环外访问页面品牌巨型字段数据。如果我在循环之外需要它,我将如何获取这些数据?

我最初想过在循环中将一些数据放在数组中,然后在body标签中引用$ page_options数组值:

(标题中的循环之外)

<body class="<?php echo $page_options['pageBranding'];?>

来自循环“

$page_options = array(  

        'pageBranding'  =>  get_post_meta($post_id, 'pageBranding', true), 
        'layout'        =>  get_post_meta($post_id, 'pageLayout', true)
);

我这样做是正确的还是有更好的方法吗?或者我应该只在循环中引用我需要的元字段,然后在循环外部使用 global $ wp_query; 并获取post meta以获取正文和样式表所需的数据?< / p>

1 个答案:

答案 0 :(得分:1)

如果您需要循环外的数据,我建议使用$ wp_query或global $ post。

<?php global $post; ?>

然后你可以像平常一样调用它

<?php $samplemeta = get_post_meta($post->ID, "your_meta_name", true); ?>