2016-10-19 3 views
1

Wenn ich Paginierung für benutzerdefinierte Beitragstyp product verwenden funktioniert es gut, aber es funktioniert nicht für die Kategorien von benutzerdefinierten Beitragstyp. für Beispiel Paginierung funktioniert für diese http://localhost/wordpress/products/page/2/ und nicht für diese http://localhost/wordpress/products/landscape/page/2/ es zeigt immer die erste Seite Inhalt. Wie löst man das? Darunter ist mein Code.Paginierung funktioniert nicht für Kategorie von benutzerdefinierten Beitragstyp

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 
$args = array('post_type' => 'product', 'posts_per_page' =>1,'taxonomy' =>'product_cat','term' => $cat_name1,'orderby'=>'post_date','page'=>$paged); 
$wp_query = new WP_Query($args); 
if($wp_query->have_posts()) : while ($wp_query->have_posts()): $wp_query->the_post(); 

<div class="product_list"> 
<?php the_title();?> 
</div> 
<?php endwhile; ?> 
<?php wp_pagenavi(array('query' => $wp_query));//plugin code ?> 
<?php else : ?> 
<!-- No posts found --> 
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12"> 
<?php echo "No Products found for this categoy!." ?> 
</div> 
<?php endif; ?> 
<?php wp_reset_query(); ?> 

Antwort

2

Try this:

-Ersetzen 'Seite' Argumente mit 'ausgelagerten'

-Ersetzen 'Taxonomie' mit 'tax_query'.

if (get_query_var('paged')) $paged = get_query_var('paged'); 
if (get_query_var('page')) $paged = get_query_var('page'); 
$taxonomy = 'product_cat'; 

$args = array('post_type' => 'product', 'posts_per_page' =>1,'tax_query' => array(
     array(
      'taxonomy' => $taxonomy, 
      'field' => 'id', 
      'terms' => $cat_name1, 
     ), 
    ),'orderby'=>'post_date','paged'=>$paged); 

Paginierung::

bitte ersetzen wp_pagenavi() Funktion mit folgendem Code:

if (get_query_var('paged')) $paged = get_query_var('paged'); 
if (get_query_var('page')) $paged = get_query_var('page'); 
$taxonomy = 'product_cat'; 
$taxonomy_terms = get_terms($taxonomy, array(
    'hide_empty' => 0, 
    'fields' => 'ids' 
)); 


$args = array('post_type' => 'product', 'posts_per_page' =>1,'tax_query' => array(
     array(
      'taxonomy' => $taxonomy, 
      'field' => 'id', 
      'terms' => $taxonomy_terms, 
     ), 
    ),'orderby'=>'post_date','paged'=>$paged); 

In Ihrer Frage haben Sie $cat_name1 nach Begriffen Auflistung dann verwenden Sie bitte folgenden Code verwendet

$big = 999999999; // need an unlikely integer 

echo paginate_links(array(
    'base' => str_replace($big, '%#%', esc_url(get_pagenum_link($big))), 
    'format' => '/page/%#%', 
    'current' => max(1, $paged), 
    'total' => $wp_query->max_num_pages 
)); 
+0

@ vr Ajesh Hallo, ich habe versucht mit 'tax_query' aber immer noch nicht den Inhalt der nächsten Seite anzuzeigen. Paginierung, die den Link der nächsten Seite anzeigt, aber nicht den Inhalt der nächsten Seite. – Amiyar

+0

eigentlich '$ cat_name1 = 'landscape'' es ist nicht ID – Amiyar

+0

okay, ist' Landschaft 'Begriff blog? @Amith – vrajesh

Verwandte Themen