gpt4 book ai didi

wordpress - 使用 bool 自定义字段对 meta_query 进行排序

转载 作者:行者123 更新时间:2023-12-04 12:25:27 26 4
gpt4 key购买 nike

我一直在寻找几个小时来允许在带有 bool 字段的存档页面上发布粘性帖子。

如果我的字段不是 bool 值(日期、数字 >= 2 或任何其他值),则一切正常,但我无法对 bool 字段执行任何操作。

这是我的代码:

$query->set( 'meta_query', array(
'relation' => 'OR',
array(
'key' => 'cat_sticky_enabled',
'compare' => 'EXISTS',
),
array(
'key' => 'cat_sticky_enabled',
'compare' => 'NOT EXISTS'
)
) );

$query->set( 'orderby', 'meta_value date' );
$query->set( 'order', 'DESC' );

在 Boolean 的情况下:
  • 如果我只是调用存在的“cat_sticky_enabled”,我会得到一个很好的结果(所有选中的帖子)。
  • 如果我只是调用不存在的“cat_sticky_enabled”,我会得到一个很好的结果(所有未经检查的帖子)。
  • 如果我调用两者,我有我所有的帖子,但我无法正确订购它们(尝试使用 meta_value 和 meta_value_num):/

  • 预先感谢您的回答。我错过了一些东西,但我找不到它:/

    编辑:对不起,我的代码是“或”,而不是“与”

    最佳答案

    我终于解决了我的问题:)

    如果它可以帮助某人:

    $query->set( 'meta_query', array(
    'relation' => 'OR',
    'field_order' => array(
    'key' => 'category_sticky_post_enabled',
    'compare' => 'EXISTS',
    ),
    'field_order_withnulls' => array(
    'key' => 'category_sticky_post_enabled',
    'compare' => 'NOT EXISTS',
    )
    )
    );

    $query->set( 'orderby', 'field_order_withnulls post_date' );
    $query->set( 'order', 'DESC' );

    关于wordpress - 使用 bool 自定义字段对 meta_query 进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56714587/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com