如何更改我的搜索表单以显示产品结果,而不是博客结果

时间:2018-09-21 作者:Jakob Cross

我目前正在使用模板构建wordpress/woocommerce网站,并且在搜索表单和;后果

使用搜索栏时,结果会显示标题“博客”,并显示为博客结果,而不是产品。

如有任何建议,将不胜感激

搜索php文件:

<div class="ps-search">

<div class="ps-search__content">
    <a class="ps-search__close" href="#">
        <span></span>
    </a>

    <form class="ps-form--search-2" method="get" action="<?php echo esc_url( home_url( \'/\' ) ); ?>">
        <h3>

            <?php if(class_exists(\'Woocommerce\')):?>

                <?php esc_html_e(\'Search products...\');?>

            <?php else:?>

                <?php esc_html_e(\'Search posts...\');?>  

            <?php endif;?>  

        </h3>

        <div class="form-group">

            <input class="form-control" type="text" name="s" placeholder="<?php esc_attr_e(\'Enter keyword here...\', \'xuper\');?>" value="<?php echo esc_attr(get_search_query());?>">

            <?php if(class_exists(\'Woocommerce\')):?>

                <input type="hidden" name="post_type" value="product">

            <?php endif;?>  

            <button type="submit" class="ps-btn ps-btn--black ps-btn--fullwidth btn-search-popup">
                <?php esc_html_e(\'Search\', \'xuper\');?>
            </button>

        </div>

    </form>

</div>

1 个回复
SO网友:Pratik Patel

在函数中尝试以下过滤器。php文件

function SearchFilter($query) {
if ($query->is_search) {
$query->set(\'post_type\', \'product\');
}
return $query;
}
add_filter(\'pre_get_posts\',\'SearchFilter\');
希望这会有所帮助!

结束

相关推荐

Searching for content post

我需要的“wordpress搜索”引擎只能用于帖子的内容。我在寻找一些解决方案,但“wordpress搜索”引擎总是只按帖子标题显示结果。我可以修改什么,或者应该做什么来解决此问题?谢谢你的帮助!