Modello diverso di prodotti per categoria specifica. WooCommerce


8

Ad esempio, ho macchine da caffè di categoria e un modello per il modello di prodotto singolo di una macchina da caffè, ma per la categoria di caffè voglio avere un modello singolo di prodotto singolo, come implementarlo? non ho accesso a questo post http://www.woothemes.com/support-forum/?viewtopic=83667 ma ha una domanda simile, con pagine e categorie in WordPress è semplice, ma come si fa nel woocommerce?

Risposte:


5

Crea il nuovo modello e chiamalo: taxonomy-product_cat-Your_category_product_slug.php semplice come questo


Questa è la risposta, anche se non è accettata.
Allen Gingrich,

4

Puoi cambiare il tuo singolo prodotto.php in modo che sia solo un reindirizzamento al modello corretto a seconda della categoria di prodotto del prodotto corrente.

Per fare ciò, dovresti copiare single-product.php nella cartella di woocommerce del tuo tema. Rinominalo in single-product-default.php o altro. Crea un'altra copia e chiamala single-product-coffee.php. Puoi apportare qualsiasi modifica tu voglia apportare a questo.

Quindi nel tuo singolo prodotto.php potresti aggiungere un semplice condizionale per reindirizzare al prodotto singolo appropriato - qualcosa .php

if( has_term( 'coffee-maker', 'product_cat' ) ) {
    $file = 'single-product-coffee.php';
} else {
    $file = 'single-product-default.php';
}

global $woocommerce;

load_template( $woocommerce->template_url . $file );

3

Ho effettuato un reindirizzamento in single-product.php usando l'ID prodotto.

Quindi ho creato diversi modelli di prodotto nella cartella di overriden woocommerce (../your-theme/woocommerce/) come single-product-product1.php e quello predefinito (single-product-default.php, che era semplicemente una copia del precedente prodotto singolo.php).

if($post->ID == '103'){
wc_get_template_part( 'single-product-product1' ); 
} else{
wc_get_template_part( 'single-product-default' );
}

Ho dovuto effettuare il login e votare per questo! Grazie, mi hai salvato!
Tiago,

1

L'ho fatto (Woocommerce 2.1) creando un modello per il prodotto nei modelli di woocommerce del mio tema chiamato "content-single-product - {$ product_cat} .php" e aggiungendo un filtro "wc_get_template_part" che cerca i modelli che prendono il nome dal prodotto categoria. Ora puoi sovrascrivere il modello di contenuto per singolo prodotto per categoria di prodotto:

function my_custom_product_template($template, $slug, $name) {
    if ($name === 'single-product' && $slug === 'content') {
        global $product_cat;
        $temp = locate_template(array("{$slug}-{$name}-{$product_cat}.php", WC()->template_path() . "{$slug}-{$name}-{$product_cat}.php"));
        if($temp) {
           $template = $temp;
        }
    }
    return $template;
}

add_filter('wc_get_template_part', 'my_custom_product_template', 10, 3);
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.