• Because my Default search isn’t returning any results, im trying to write my own search function.
    Where and how must I add this function? I don’t understand the instructions on the wordpress Codex…
    How I understood, I have to add my search-function in the Themes “functions.php” File:

    function custom_search() {
    	$search_term = array(
    				's' => $_GET['s']);
    	$my_query = $search_term;
    
    	$my_query = new WP_Query($search_term);
    	wp_reset_postdata();
    
        return $my_query;
    }

    How do I catch those results and Display them on the results Page?

Viewing 1 replies (of 1 total)
  • Thread Starter stephanium

    (@stephanium)

    I think im closer to the solution now…
    In the Themes function.php I placed following function:

    function searchFilter($query) {
    	if ($query->is_search)
    	{
    		wp_reset_query();
    		$args = array ( 's' => $_GET['s'] );
    		query_posts( $args );
    	}
    }
    add_filter('pre_get_posts', 'searchFilter');

    search.php should Display my results with following Code:

    <?php if ( have_posts() ) : ?>
    
    			<header class="page-header">
    				<h1 class="page-title"><?php printf( __( 'Search Results for: %s', 'twentytwelve' ), '<span>' . get_search_query() . '</span>' ); ?></h1>
    			</header>
    
    			<?php twentytwelve_content_nav( 'nav-above' ); ?>
    
    			<?php /* Start the Loop */ ?>
    			<?php while ( have_posts() ) : the_post(); ?>
    				<?php get_template_part( 'content', get_post_format() ); ?>
    			<?php endwhile; ?>
    
    			<?php twentytwelve_content_nav( 'nav-below' ); ?>
    
    		<?php else : ?>
    
    			<article id="post-0" class="post no-results not-found">
    				<header class="entry-header">
    					<h1 class="entry-title"><?php _e( 'Nothing Found', 'twentytwelve' ); ?></h1>
    				</header>
    
    				<div class="entry-content">
    					<p><?php _e( 'Sorry, but nothing matched your search criteria. Please try again with some different keywords.', 'twentytwelve' ); ?></p>
    					<?php get_search_form(); ?>
    				</div><!-- .entry-content -->
    			</article><!-- #post-0 -->
    
    		<?php endif; ?>

    When I search something now, I’m getting the Error “The website cannot display the page”… anybody got an idea, what’s wrong with my function? Or is there missing code in some other file, that everything can be displayed?

Viewing 1 replies (of 1 total)
  • The topic ‘custom search function’ is closed to new replies.