0

私はプラグインhttp://www.advancedcustomfields.comを使用しており、何千ものカスタム投稿を照会しようとしています。

以下のループでは、投稿にカスタム フィールドのスティッキー投稿が [はい] として選択されていないかどうかを確認しています。

これを機能させるには、何千もの投稿を手動で調べて保存し、カスタム フィールドの値を保存する必要があります。

このクエリに追加して、カスタム フィールドに値があるかどうかを確認するにはどうすればよいですか?

$myposts = get_posts(array(
                        'post_type' => 'news',
                        'posts_per_page' => $display,
                        'post_status' => 'publish',
                            'tax_query' => array(
                                array(
                                'taxonomy' => 'topics', 
                                'field' => 'slug', 
                                'terms' => array($title))
                            ),  
                        'meta_query' => array(
                        'relation' => 'OR',
                                array(
                                    'key' => 'sticky_post',
                                    'value' => 'Yes',
                                    'compare' => '!='
                                ),
                                array(
                                    'key' => 'sticky_post',
                                    'compare' => false
                                )                                                           
                        )       
                        ));
4

2 に答える 2

0

私は実際に ACF の更新機能を使用してこれを解決しました。そのため、すべての投稿を更新して、カスタム フィールドの値が最小になるようにしました。これにより、空白のカスタム フィールドをクエリする必要がなくなりました。

$topposts1 = get_posts(array(
                    'post_type' => 'news',
                    'posts_per_page' => 100000,
                    'post_status' => 'publish')); 

                    $featured_count = 0;
                    foreach ($topposts1 as $post) {
                    setup_postdata($post);

                    $field_key = "field_52a1b8b824fff";
                    $value = "No";
                    $post_id = $post->ID;
                        update_field( $field_key, $value, $post_id);
                    echo $post->post_title;
                    echo "<br />";
                    } wp_reset_query(); 
于 2014-01-30T11:49:17.083 に答える