显示查询 meta_key_value 包括空值
show query meta_key_value including null value
我正在尝试在 WordPress 中执行一个按自定义字段的 meta_value_num 排序的简单查询,问题是并非所有输入都有一个值,所以它给了我一个空值,但它没有在查询中显示得很好,它只显示有价值的,我有这个代码
<ul class="post">
<?php $paged = get_query_var( 'paged' ) ? get_query_var( 'paged' ) : 1;
$args = array(
'post_type' => 'post',
'paged' => $paged,
'meta_key' => 'votes_count',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'post_status' => 'publish'
);
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) :
while ( $the_query->have_posts() ) : $the_query->the_post();
get_template_part( 'public/partials/template/loop' );
endwhile; ?>
<li class="numeration">
<div class="paginavi">
<?php YESPLEASE_Add_Theme_Support::yesplease_pagination(); ?>
</div>
</li>
<?php endif;?>
</ul>
它只显示有价值的内容,因为这正是您要求它执行的操作。
我能想到的就是让它成为管理面板中的必填字段,或者找到其他方法将其包含在 post 对象中,例如使用 ACF。
ACF 是 最强大的插件,主题是添加易于访问的自定义字段 post 类型,具有广泛且易于阅读的文档。通过使用 ACF,您可以在 post 编辑屏幕中将其设置为必需值,或者您可以将其默认为实际值,例如 0 而不是 NULL。
您可以使用 meta_query
试试下面的代码。
$args = array(
'post_type' => 'post',
'paged' => $paged,
'meta_key' => 'votes_count',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'post_status' => 'publish',
'meta_query' => array(
array(
'key' => 'votes_count',
'value' => array(''),
'compare' => 'NOT IN'
)
)
);
我正在尝试在 WordPress 中执行一个按自定义字段的 meta_value_num 排序的简单查询,问题是并非所有输入都有一个值,所以它给了我一个空值,但它没有在查询中显示得很好,它只显示有价值的,我有这个代码
<ul class="post">
<?php $paged = get_query_var( 'paged' ) ? get_query_var( 'paged' ) : 1;
$args = array(
'post_type' => 'post',
'paged' => $paged,
'meta_key' => 'votes_count',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'post_status' => 'publish'
);
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) :
while ( $the_query->have_posts() ) : $the_query->the_post();
get_template_part( 'public/partials/template/loop' );
endwhile; ?>
<li class="numeration">
<div class="paginavi">
<?php YESPLEASE_Add_Theme_Support::yesplease_pagination(); ?>
</div>
</li>
<?php endif;?>
</ul>
它只显示有价值的内容,因为这正是您要求它执行的操作。
我能想到的就是让它成为管理面板中的必填字段,或者找到其他方法将其包含在 post 对象中,例如使用 ACF。
ACF 是 最强大的插件,主题是添加易于访问的自定义字段 post 类型,具有广泛且易于阅读的文档。通过使用 ACF,您可以在 post 编辑屏幕中将其设置为必需值,或者您可以将其默认为实际值,例如 0 而不是 NULL。
您可以使用 meta_query 试试下面的代码。
$args = array(
'post_type' => 'post',
'paged' => $paged,
'meta_key' => 'votes_count',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'post_status' => 'publish',
'meta_query' => array(
array(
'key' => 'votes_count',
'value' => array(''),
'compare' => 'NOT IN'
)
)
);