仅搜索定制帖子类型的简单方法

时间:2011-09-28 作者:remi90

我只是想找到一种方法来缩小我当前的搜索栏,以便它只在我的“事件”自定义帖子类型中进行搜索。

我不希望搜索索引任何其他帖子类型,仅“事件”。

这是搜索栏:

<form id="searchform" action="http://localhost:8888/ltc" method="get">
        <input class="inlineSearch" type="text" name="s" value="Enter a keyword" onblur="if (this.value == \'\') {this.value = \'Enter a keyword\';}" onfocus="if (this.value == \'Enter a keyword\') {this.value = \'\';}" />
        <input class="inlineSubmit" id="searchsubmit" type="submit" alt="Search" value="Search" />
    </form>
以及搜索。php:

<?php if ( have_posts() ) : ?>
            <h1><?php printf( __( \'Search Results for: %s\', \'twentyten\' ), \'\' . get_search_query() . \'\' ); ?></h1>
            <?php
            /* Run the loop for the search to output the results.
             * If you want to overload this in a child theme then include a file
             * called loop-search.php and that will be used instead.
             */
             get_template_part( \'loop\', \'search\' );
            ?>

(我实际上还没有编辑默认的search.php页面,因为我只是想首先获得正确的索引)

谢谢

3 个回复
最合适的回答,由SO网友:hacksy 整理而成

要搜索自定义帖子类型,可以添加到查询中&post_type=events , 要做到这一点,只需像这样编辑表单

<form id="searchform" action="http://localhost:8888/ltc" method="get">
        <input class="inlineSearch" type="text" name="s" value="Enter a keyword" onblur="if (this.value == \'\') {this.value = \'Enter a keyword\';}" onfocus="if (this.value == \'Enter a keyword\') {this.value = \'\';}" />
        <input type="hidden" name="post_type" value="events" />
        <input class="inlineSubmit" id="searchsubmit" type="submit" alt="Search" value="Search" />
</form>
您可以对任何帖子类型执行此操作(需要存在一个帖子类型,否则将被丢弃),并且可以正常工作

SO网友:Brian Fegter

要跟随Hansy查看我的帖子:search only pages if on page 使用无线电复选框为用户提供他们希望搜索的内容的选项。

SO网友:Mohammad Asif

要搜索自定义帖子,只需将帖子类型放在value部分<例如:我的自定义帖子类型是“blogpst”。现在看看我在第二个输入字段中实际做了什么

<input type="hidden" name="post_type" value="blogpst" />
看,我做了什么。我只是把post类型放在value部分。

结束

相关推荐

Varying Search Result Pages

我的网站上有两种不同的搜索结果,我想完全改变搜索结果页面的外观。我对搜索表单做了一些修改,但我不确定如何强制它重定向到另一个搜索。php如有任何帮助,将不胜感激<form role=\"search\" method=\"get\" id=\"searchsupport\" action=\"/\"> <label class=\"screen-reader-text\" for=\"s\">Search for:</label> <