web-dev-qa-db-ja.com

完全に一致するように検索結果を制限する

私はWP_QueryでWordpressで結果を示すのに問題があります。問題は単純ですが、プログラマーではない限り、私はそれを困難にします。

だから、私は1-1-1-12-1-1-1-1のような値を持つカスタムフィールドを持っています。そして、例えば1-1-1-1を検索すると、2番目の結果も表示されます。完全に一致するものだけを検索結果に表示したい。誰かが私を手伝ってくれる?

コード:

    <?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
        global $wp_query;

        $query = new WP_Query( 'meta_key=wpcf-resitevtags' );
        $query = $wp_query->query;
        if (!is_array($query)) parse_str($query, $query); 
        $custom_query = new WP_Query(array_merge($query, array('posts_per_page' => $gantry->get('search-count'), 'meta_key' => 'wpcf-resitevtags', 'posts_per_page' => 22,  'paged' => $paged)));
         ?>

        <?php if($custom_query->have_posts()) : ?>

        <?php if($gantry->get('search-page-title')) : 

        ?>
        <?php endif; ?>

        <?php while ($custom_query->have_posts()) : $custom_query->the_post(); ?>

        <?php

        //$title    = strip_tags(get_the_title());
        $content    = strip_tags(strip_shortcodes(get_the_content(false)));
        $excerpt    = strip_tags(strip_shortcodes(get_the_excerpt()));
        $keys       = explode(" ",$s);
        //$title    = preg_replace('/('.implode('|', $keys) .')/iu', '<span class="search-excerpt">\0</span>', $title);
        //$content  = preg_replace('/('.implode('|', $keys) .')/iu', '<span class="search-excerpt">\0</span>', $content);
        //$excerpt  = preg_replace('/('.implode('|', $keys) .')/iu', '<span class="search-excerpt">\0</span>', $excerpt);

        ?>
3
Jure Mali

私はmeta_queryがあなたを助けるべきだと思います。

$query = new WP_Query( array(array(
                                    'key' => 'wpcf-resitevtags',
                                    'value' => '1-1-1-1' 
                                    'compare' => '='
                            ))
                    );
2