我想使用WooCommerce短代码
[product id="99"]
但是,我希望产品图片和产品名称本身不会链接到单个产品页面。我想要的只是“添加到购物车”按钮按预期工作,但没有其他任何可点击的。
这可能吗?我需要编辑什么模板?
如果更容易,则不需要仅适用于特定的短代码。我从不希望让人们能够访问产品页面,所以如果有一种“全球”方式可以做到这一点,它也会起作用。
答案 0 :(得分:1)
在这里你需要在你的functions.php中做的逻辑,我已经创建了一个自定义短代码来获得你解释的产品。
function get_c_product($atts){
$params = shortcode_atts(array(
'id' => '0',
), $atts );
$args = array('post_type'=>'product','post__in'=>array($params['id']));
$the_query = new WP_Query( $args );
// The Loop
if ( $the_query->have_posts() ) {
$return = '<ul>';
while ( $the_query->have_posts() ) {
$the_query->the_post();
$_product = wc_get_product( get_the_ID() );
$return .= '<li>' . woocommerce_get_product_thumbnail() . '</li>';
$return .= '<li>' . get_the_title() . '</li>';
$return .= '<li>' . do_shortcode('[add_to_cart id='.get_the_ID().']') . '</li>';
}
$return .= '</ul>';
/* Restore original Post Data */
wp_reset_postdata();
} else {
// no posts found
}
return $return;
}
add_shortcode('product_custom','get_c_product');
然后使用如下的短代码:echo do_shortcode('[product_custom id="99"]');
或[product_custom id="99"]