WP_Query 内的自定义字段值

Custom field value inside WP_Query

我想要一个 WP_Query,它显示所有 post,它们具有与显示 post.

相同的自定义字段值

这是我的代码:

    function show_other_posts() {
        //Get the current custom field value
        if( get_field('desktop_cat') ){
            $redirect_value = the_field('desktop_cat');

            //Echo the current custom field value for debugging
            echo $redirect_value;

            //Query Posts with same value
            $redirect_args = array(
                    'posts_per_page' => -1,
                    'post_type'     => 'post',
                    'meta_query' => array(
                        array(
                          'key' => 'desktop_cat',
                          'value' => $redirect_value,
                          'compare' => '='
                        )
                    )
            );

            //Display the Post Titles
            $the_query = new WP_Query ( $redirect_args );
            if( $the_query->have_posts() ): while( $the_query->have_posts() ) : $the_query->the_post();
            the_title();
            endwhile;endif;
            wp_reset_query();
        };
    };

问题一定是 'value' => $redirect_value,,因为当我手动输入一个值时它运行良好。一定是那个变量有问题。

有什么想法吗?

非常感谢

the_field() 回显字段值。您应该改用 get_field()(returns,而不是回应字段值):

$redirect_value = get_field('desktop_cat');