默认woocommerce短代码无法做到这一点。您需要编写一些自定义内容来按标题获取产品,从那里获取ID,然后使用ID调用添加到购物车的快捷码。类似于这样:
add_shortcode(\'add_to_cart_by_title\', \'add_to_cart_by_title\');
function add_to_cart_by_title ($atts) {
if (!class_exists(\'WooCommerce\')) {
return \'\';
}
$args = shortcode_atts(array(
\'title\' => \'\'
), $atts);
$related_product = get_page_by_title($args[\'title\'], OBJECT, \'product\');
if ($related_product) {
$product_id = $related_product->ID;
return do_shortcode(\'[add_to_cart id="\' . $product_id . \'"]\');
}
return \'\';
}
然后你会这样打电话
[add_to_cart_by_title title="whatever"]
您还可以从shortcode调用中删除title属性,让它通过get_the_title()