-
AuthorPosts
-
September 21, 2015 at 4:24 pm #506501
Hi Guys,
I have a couple of queries:
1. Creating a grid style results page from a search
2. Add a sidebar to the page but needs to override the Enfold ->Options Pages have no sidebar ? im assuming Search.php is a post type “Page”The following code I have put together from bits and pieces I have found in the forum however the get_post_types() function seems to return alot of unwanted results as I have over 40 plugins running so it is picking up for example Paypal IPN post types ? could we perhaps pass an array to ‘post_types’=> array(‘product’, ‘post’) ? and just have it search posts and products ?
<?php global $avia_config; /* * get_header is a basic wordpress function, used to retrieve the header.php file in your theme directory. */ get_header(); //$avia_config['layout']['current'] = $avia_config['layout']['sidebar_left']; // allows to customize the layout do_action( 'ava_search_after_get_header' ); $results = avia_which_archive(); echo avia_title(array('title' => $results )); do_action( 'ava_after_main_title' ); ?> <div class='container_wrap container_wrap_first main_color <?php avia_layout_class( 'main' ); ?>'> <div class='container'> <main class='content template-search <?php avia_layout_class( 'content' ); ?> units' <?php avia_markup_helper(array('context' => 'content'));?>> <div class='page-heading-container clearfix'> <section class="search_form_field"> <?php echo "<h4>".__('New Search','avia_framework')."</h4>"; echo "<p>".__('If you are not happy with the results below please do another search','avia_framework')."</p>"; get_search_form(); echo "<span class='author-extra-border'></span>"; ?> </section> </div> <?php if(!empty($_GET['s'])) { echo "<h4 class='extra-mini-title widgettitle'>{$results}</h4>"; global $posts; $post_ids = array(); foreach($posts as $post) $post_ids[] = $post->ID; $atts = array( 'type' => 'grid', 'items' => 60/*get_option('posts_per_page')*/, 'columns' => 4, 'class' => 'avia-builder-el-no-sibling', 'paginate' => 'yes', 'use_main_query_pagination' => 'yes', 'custom_query' => array( 'post__in'=>$post_ids,'post_types'=>array('product', 'post')) ); //print_r(get_post_types()); $blog = new avia_post_slider($atts); $blog->query_entries(); echo "<div class='entry-content'>".$blog->html()."</div>"; } ?> <!--end content--> </main> <?php //get the sidebar $avia_config['currently_viewing'] = 'shop'; get_sidebar(); //$avia_config['currently_viewing'] = 'shop'; //echo '<aside class="sidebar sidebar_left alpha units"><div class="inner_sidebar extralight-border">'; //dynamic_sidebar( 'Shop Overview Page' ); // $default_sidebar = false; //echo '</div></aside>'; ?> </div><!--end container--> </div><!-- close default .container_wrap element --> <?php get_footer(); ?>
September 21, 2015 at 4:30 pm #506506Hey Bass!
You can loop through the results like so.
$post_types = get_post_types(); foreach ( $post_types as $post_type ) { if ( $post_type->name == "product" ) { } }
Best regards,
ElliottSeptember 21, 2015 at 11:32 pm #506738Hi Elliott,
Thanks for that however how would that be implemented in my code above ? also is it possible to add a sidebar to this search page even though in Enfold options I have selected no sidebar to post type ‘Pages’ ? Thank you any assistance is always appreciated thanks mate
Bass
September 22, 2015 at 3:57 pm #507154Hey!
I don’t see where your using the get_post_types() in your code.
So this is not working for you?
'custom_query' => array( 'post__in'=>$post_ids,'post_types'=>array('product', 'post'))
Best regards,
Elliott -
AuthorPosts
- The topic ‘Grid style search results with sidebar’ is closed to new replies.