2017-03-30 3 views
0

Ich habe Probleme mit dem nächsten und vorherigen Kategorien Link und Name in woocmmerce. eigentlich fand ich this aber es ist nur für die normalen Wordpress categorys Post .. Ich brauche nächste und zurück zur Produktkategorie ... jeder help..i'llbekommen nächste und vorherige Kategorie Link in woocomerce Kategorie Seite

appericated

ich unten Code tryd, aber das ist überhaupt nicht logisch. ..:

global $wp_query; 
// get the query object 
$cat = $wp_query->get_queried_object(); 
$cateID = $cat->term_id -1; 
$termname = get_term_by('id', $cateID, 'product_cat'); 
$plinkname = get_term_link( $cateID, 'product_cat'); 

das wird +1 kategorie ID..aber zum beispiel wird es nicht funktionieren, wenn einer der kategorien gelöscht.

Antwort

0

In functions.php:

function woocommerce_next_prev_link() { 
if (is_product_category()){ 
    $taxonomy = 'product_cat'; 
    // Load all the terms for the product category 
    $terms = get_terms(array(
     'taxonomy' => $taxonomy, 
     'hide_empty' => FALSE, 
    )); 

    // Put all of the category id's into a simple array for searching 
    $ids = array(); 
    foreach($terms as $term) { 
     $ids[] = $term->term_id; 
    } 
    global $wp_query; 
    $cat_obj = $wp_query->get_queried_object(); 

    // Load the current term ID from the current query 
    $this_term = $cat_obj->term_id; 
    // Find the term in the list of ID's 

    $this_position = array_search($this_term, $ids); 
    // Identify the previous term 
    $prev_position = $this_position - 1; 
    // Identify the next term 
    $next_position = $this_position + 1; 

    // IF the previous term exists, and is not "off" the list (the currently displayed term is not the first term), then display the link 
    if($prev_position >=0) { 
     $prev_id = array_slice($ids, $prev_position, 1); 
     $prev_term = get_term($prev_id[0], $taxonomy); 
     if ($prev_term) { 
      echo '<a href="' . get_term_link($prev_term->term_id, $taxonomy) . '">&laquo; ' . $prev_term->name . '</a>'; 
     } 
    } 

    // IF the next term exists, and is not "off" the list (the currently displayed term is not the last term), then display the link 
    if($next_position > 0 && $next_position < count($ids)) { 
     $next_id = array_slice($ids, $next_position, 1); 
     $next_term = get_term ($next_id[0], $taxonomy); 
     if ($next_term) { 
      echo '<a href="' . get_term_link($next_term->term_id, $taxonomy) . '">' . $next_term->name . ' &raquo;</a>'; 
     } 
    } 
} 

}

Rufen Sie diese fuction in Ihrem Thema Dateien:

woocommerce_next_prev_link(); 
Verwandte Themen