Skip to content

Instantly share code, notes, and snippets.

@ChromeOrange
Created July 18, 2012 19:42
Show Gist options
  • Save ChromeOrange/3138377 to your computer and use it in GitHub Desktop.
Save ChromeOrange/3138377 to your computer and use it in GitHub Desktop.
Loop Add to Cart
<?php
/**
* Loop Add to Cart
*/
global $product;
if( $product->get_price() === '' && $product->product_type != 'external' ) return;
?>
<?php if ( ! $product->is_in_stock() ) : ?>
<a href="<?php echo get_permalink($product->id); ?>" class="button"><?php echo apply_filters('out_of_stock_add_to_cart_text', __('Read More', 'woocommerce')); ?></a>
<?php else : ?>
<?php
switch ( $product->product_type ) {
case "variable" :
$link = get_permalink($product->id);
$label = apply_filters('variable_add_to_cart_text', __('Select options', 'woocommerce'));
$type = $product->product_type;
break;
case "grouped" :
$link = get_permalink($product->id);
$label = apply_filters('grouped_add_to_cart_text', __('View options', 'woocommerce'));
$type = $product->product_type;
break;
case "external" :
$link = get_permalink($product->id);
$label = apply_filters('external_add_to_cart_text', __('Read More', 'woocommerce'));
$type = $product->product_type;
break;
default :
$link = get_permalink($product->id);
$label = apply_filters('variable_add_to_cart_text', __('View Options', 'woocommerce'));
$type = 'variable';
break;
}
printf('<a href="%s" rel="nofollow" data-product_id="%s" class="button add_to_cart_button product_type_%s">%s</a>', $link, $product->id, $type, $label);
?>
<?php endif; ?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment