Questions tagged «custom-field»

自定义字段是可以保存称为元数据的任意附加信息的字段。


1
WP_Query-按元值排序结果
我检查了一下,还没有找到一个可行的答案。我有以下论点的WP_Query: $args = array( 'post_status' => 'publish', 'post_type' => 'listing', 'meta_key' => 'client_feedback_score', 'orderby' => 'client_feedback_score', 'order' => 'DESC' ); $query = new WP_Query($args); 我想按自定义帖子字段“ client_feedback_score”(从最低到最高)对结果进行排序。但这似乎不起作用……有人能指出我正确的方向吗? 编辑(已解决): 感谢Milo的回应,以下是通过数字元值进行排序的工作代码: $args = array( 'post_status' => 'publish', 'post_type' => 'listing', 'meta_key' => 'client_feedback_score', 'orderby' => 'meta_value_num', 'order' => 'DESC' );



7
获取自定义字段键的所有值(跨发布)
我知道如何获取特定帖子的自定义字段值。 get_post_meta($post_id, $key, $single); 我需要的是让所有与特定的自定义后键关联,该值在所有的帖子。 有人知道这样做的有效方法吗?我不想遍历数据库中的所有帖子ID。 例: 4个帖子的自定义字段“ Mood”的值均不同。2个帖子的值为“ happy”,1个帖子的值为“ angry”,1个帖子的值为“ sad” 我想输出:在我们所有的帖子中:两个快乐,一个愤怒和一个悲伤的作者。 但是很多职位。 我正在寻找的是: 一个WP函数来获得这个。要么 一个自定义查询,以使其尽可能高效地获得。

1
如何使用自定义字段(搜索功能)过滤帖子列表(在WP仪表板帖子列表中)?
尽管我在Google上搜索了很多,但我还没有找到一个非常简单的问题的答案: 我有一些带有自定义字段(即Supplier_name)的帖子。我希望能够根据此自定义字段搜索和过滤我的帖子。换句话说,在管理员帖子列表中,我想要一个搜索框(名为“供应商名称”),可以在其中键入一个值(例如“ IBM”),然后单击一个搜索按钮,我返回所有具有名为“ supplier_name”的定制字段的帖子,如果是,则定制字段的值为“ IBM”。 我怎样才能做到这一点 ?

8
使用自定义字段的orderby meta_value进行自定义查询
a,从WP3.0开始,有一些用于自定义高级查询的选项,这很棒。到目前为止,已针对新的meta_query参数弃用了自定义字段的某些查询参数(例如meta_key,meta_value )(请参阅此处) 我尝试使用新语法进行一个非常简单的查询,即按包含指定meta_key(order_in_archive)的特定post_type(服务)查询帖子-效果令人满意。但是-我想按meta_value对查询进行排序,但没有成功。 这是我的查询- query_posts( array( 'post_type' => 'services', 'order' => 'ASC', 'orderby' => 'meta_value', 'meta_query' => array( array('key' => 'order_in_archive')) ) ); 我也尝试通过meta_value_numeric和meta_value进行orderby,但是无论如何,结果是按发布日期排序的(就像常规帖子一样)。有人知道该怎么做吗? 谢谢

6
在管理员列表发布屏幕中扩展搜索上下文
我创建了一个自定义帖子类型,并在其中附加了一些自定义字段。现在,我想搜索作者可以在自定义帖子列表屏幕(在管理后端)中执行的搜索,也可以在元字段中执行搜索,而不仅像往常一样查找标题和内容。 我可以在哪里挂接以及必须使用什么代码? 范例图片 斯特凡诺

7
是否在WordPress管理员中将字段添加到类别,标签和自定义分类编辑屏幕?
问题是“ 如何在WordPress Admin的 “ 类别,标签和自定义分类法编辑”屏幕中添加一个或多个字段? ”这个问题在2010年8月1日的wp-hackers列表中被提出,当天晚些时候我提供了一个解决方案。在最初的提问者再次讨论这个问题今天让我想起了溶液(8月21日)。由于这可能是常见的需求,因此我决定将包含代码的解决方案发布在这里,以供将来其他人使用。

4
在WP query_posts meta_query中比较日期的正确方法是什么
我在WP模板中有一个query_posts调用。通过使用“更多字段”插件,我可以使站点管理员能够创建事件(自定义帖子类型),然后输入格式为YYYY / mm / dd的日期。 主要问题是;我应该将什么值传递给meta_query数组中的value选项?我目前正在尝试传递“ date(“ Y / m / dh:i A”)”(减去引号),因为据我所知,它将在今天打印当前日期。我不在乎日期的时间,所以可能无关紧要。最终,我正在尝试使用compare选项来确定显示即将发生的事件,该站点上不同位置的过去事件。在另一个地方,我实际上需要将值选项传递给一个数组,该数组将打印当前月份的第一天和最后一天,从而将输出限制为该月发生的事件。 <?php query_posts( array( 'post_type' => 'event', // only query events 'meta_key' => 'event_date', // load up the event_date meta 'orderby' => 'meta_value', // sort by the event_date 'order' => 'asc', // ascending, so earlier events first 'posts_per_page' …

4
带有用于自定义分类法和自定义字段的过滤器的高级搜索表单
我想为特定的自定义帖子类型构建高级搜索表单,具有针对自定义帖子类型自定义字段,自定义分类法以及单独的自定义帖子类型属性(字段和分类法)的过滤器,这些属性将链接到第一个使用自定义关系字段的帖子类型。 我最近开始使用WP的自定义帖子类型,字段和分类法,到目前为止,我还是很喜欢它,但是为了充分利用它,我希望能够对其进行正确的搜索。我需要手动做吗?如果是这样,怎么办? PS。如果有关系,我将使用插件:高级自定义字段和自定义帖子类型UI。 下面,我模拟了一个示例,该示例显示了过滤的外观以及与上面的帖子类型之间的关系。

7
保存自定义字段时添加验证和错误处理?
我有一个在帖子类型上定义自定义字段的函数。假设该字段为“副标题”。 保存帖子后,我想对输入内容进行一些验证,并在必要时在帖子编辑屏幕上显示错误消息。就像是: // Handle post updating function wpse_update_post_custom_values($post_id, $post) { // Do some checking... if($_POST['subhead'] != 'value i expect') { // Add an error here $errors->add('oops', 'There was an error.'); } return $errors; } add_action('save_post','wpse_update_post_custom_values',1,2); 我试图将其挂钩到save_post动作,但是我不知道如何处理错误。似乎没有错误对象传递到函数中,并且如果我创建自己的WP_Error obj并将其返回,则无论哪种机制都不会在后期编辑页面上吐出错误,因此不会尊重它。 我目前在我的自定义meta框内有一个页面错误消息,但这并不理想-我宁愿有一个大的,红色的,最顶部的错误,如WP通常显示。 有任何想法吗? 更新: 根据@Denis的回答,我尝试了一些不同的方法。将错误存储为全局变量是行不通的,因为Wordpress在save_post过程中进行了重定向,这会在显示全局变量之前将其杀死。 我最终将它们存储在meta字段中。问题是您需要清除它们,否则当您导航到另一个页面时它们不会消失,因此我不得不在admin_footer上附加另一个函数,以清除错误。 我不会期望这么常见的错误处理(更新帖子)会很笨拙。我是否缺少明显的东西,或者这是最好的方法? // Handle post updating function wpse_5102_update_post_custom_values($post_id, $post) …

4
WP插入post PHP函数和自定义字段
WordPress功能用于以编程方式提交数据。要提交的标准字段,包括内容,摘录,标题,日期等。 没有任何文档说明了如何提交到自定义字段。我知道该add_post_meta($post_id, $meta_key, $meta_value, $unique);功能是可能的。 但是,如何将其纳入标准wp_insert_post功能? <?php $my_post = array( 'post_title' => $_SESSION['booking-form-title'], 'post_date' => $_SESSION['cal_startdate'], 'post_content' => 'This is my post.', 'post_status' => 'publish', 'post_type' => 'booking', ); wp_insert_post( $my_post ); ?>

9
将元查询('meta_query')与搜索查询('s')一起使用
尝试构建不仅搜索默认值(标题,内容等)而且搜索特定自定义字段的搜索。 我当前的查询: $args = array( 'post_type' => 'post', 's' => $query, 'meta_query' => array( array( 'key' => 'speel', 'value' => $query, 'compare' => 'LIKE' ) ) ); $search = new WP_Query( $args ) ... 这将返回与搜索查询和元查询都匹配的帖子,但我也希望它还返回与其中任何一个匹配的帖子。 有任何想法吗?

3
我可以使用pre_get_posts函数通过元键排除帖子吗?
我看到许多人更喜欢使用pre_get_posts钩子代替query_posts。下面的代码可以正常工作,并显示所有具有“功能”元键的帖子 function show_featured_posts ( $query ) { if ( $query->is_main_query() ) { $query->set( 'meta_key', 'featured' ); $query->set( 'meta_value', 'yes' ); } } add_action( 'pre_get_posts', 'show_featured_posts' ); 但是我希望将具有' featured'meta_key 的帖子从主要查询中排除。有一个简单的方法吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.