2015-06-15 26 views

Odpowiedz

11

To powinno działać:

if($product->is_type('simple')){ 
    // No variations to product 
} elseif($product->is_type('variable')){ 
    // Product has variations 
} 

Przykład: Jeśli będzie wymienić woocommerce pliku -> pojedynczy produkt uboczny -> meta.php z tym kodem, widać to działa.

<?php 
/** 
* Single Product Meta 
* 
* @author  WooThemes 
* @package WooCommerce/Templates 
* @version  1.6.4 
*/ 

if (! defined('ABSPATH')) exit; // Exit if accessed directly 

global $post, $product; 

$cat_count = sizeof(get_the_terms($post->ID, 'product_cat')); 
$tag_count = sizeof(get_the_terms($post->ID, 'product_tag')); 
?> 
<div class="product_meta"> 

<?php do_action('woocommerce_product_meta_start'); ?> 

<?php if (wc_product_sku_enabled() && ($product->get_sku() || $product->is_type('variable'))) : ?> 

    <span class="sku_wrapper"><?php _e('SKU:', 'woocommerce'); ?> <span class="sku" itemprop="sku"><?php echo ($sku = $product->get_sku()) ? $sku : __('N/A', 'woocommerce'); ?></span>.</span> 

<?php endif; ?> 

<?php echo $product->get_categories(', ', '<span class="posted_in">' . _n('Category:', 'Categories:', $cat_count, 'woocommerce') . ' ', '.</span>'); ?> 

<?php echo $product->get_tags(', ', '<span class="tagged_as">' . _n('Tag:', 'Tags:', $tag_count, 'woocommerce') . ' ', '.</span>'); ?> 

<?php do_action('woocommerce_product_meta_end'); ?> 
<?php if($product->is_type('simple')){ 
// No variations to product 
echo "XX"; 
} elseif($product->is_type('variable')){ 
// Product has variations 
echo "VV"; 
} ?> 

</div> 
+0

Mam spróbować tego, ale to nie działa. Zobacz poniżej kod –

+0

Sprawdzenie go teraz, pozwoli Ci poznać kilka minut. – BenB

+0

To działa. Czy umieszczasz kod w pętli produktu? W jakim pliku? – BenB