6

I'm just trying to find a way to narrow my current search bar so that it only searches within my 'events' custom post-type.

I do not want the search to index any other post type, only 'events'.

Here's the search bar:

<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>

And the search.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' );
            ?>

(I haven't actually edited the default search.php page yet, as I just want to get the indexing correct first)

Thanks

1

3 Answers 3

13

To search for a custom post type , you can add to the query &post_type=events , to achieve this just edit your form like this

<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>

You can do this for any post type (needs to be an existent one or will be discarded) and will work just fine

1
  • 3
    How would this work for multiple post_types?
    – kneidels
    Feb 29, 2016 at 11:37
0

To tag along with Hansy check out my post here: search only pages if on page to use radio checkboxes to give the users an option of what they wish to search.

0

To search for a custom post, you just have to put the post type in the value section.
ex: My Custom post type is "blogpst". Now see what i did actually in the second input field

<input type="hidden" name="post_type" value="blogpst" />

See, What i have did. I just put the post type in value section.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.