向查询页面对象添加自定义变量

时间:2015-05-04 作者:Benjamin

有没有办法向查询的对象添加自定义变量?

if (is_page()) {
    $q = get_queried_object();
    $term_id = $q->term_id;
}
以下是我的设置背景。

我有一个带有自定义WP\\u查询的页面,该查询输出来自特定分类法的所有帖子。我需要保存分类法\'term_id\' 我的代码的其他区域可以知道自定义循环中当前显示的类别。

现在,我正在使用“update\\u post\\u meta”将自定义字段存储到保存此值的页面。但我不想使用自定义字段。因此,我正在寻找最佳的替代解决方案。

if ($meta_term_id > -1) {
    update_post_meta( get_queried_object()->ID, \'term_id\', $meta_term_id);
}

// Build Query
$custom_query = new WP_Query($args);
我已经研究了add\\u query\\u vars,但我不想为每个页面添加url参数。

www.mydomain.com/custom-page/?term_id=\'38\';
我希望有一种方法可以将数据附加到页面对象,该对象将具有我需要的\\u id这个术语。

***更新****

我没有找到像我所希望的那样将自定义数据添加到post对象的方法,但找到了创建自定义post元数据的解决方案,但没有在页面编辑屏幕上显示自定义字段。只需要在post元数据名称前面加一个下划线。

update_post_meta( get_queried_object()->ID, \'_term_id\', $meta_term_id);

1 个回复
SO网友:Benjamin

我用这个问题的部分答案更新了我的问题。通过在元字段名称之前添加下划线“\\u0”,可以添加元数据,而无需在页面编辑屏幕上创建可编辑的自定义字段。

update_post_meta( get_queried_object()->ID, \'_term_id\', $meta_term_id);

结束

相关推荐

使用Get_Terms()显示空的分类术语

我有如下功能设置:<?php $terms = get_terms(\"wpsc_product_category\"); if ( !empty( $terms ) && !is_wp_error( $terms ) ){ foreach ( $terms as $term ) { ?> <li class=\"calendar-filter-menu-item\" data-filter=\".<?php ec