Woocommerce 产品 link url 用于简单产品
Woocommerce product link url for simple products
使用简码 [add_to_cart_url sku="#"]
将生成一个 link,只有当产品有变体时,才会将购物者带到单一产品页面。
如果我想要一个简单的产品(没有变化的产品)link 到它的单个产品页面而不是将它添加到购物车怎么办?
IMO,WooCommerce 团队似乎忽略了这一点。
我想要的只是根据商品的 SKU 生成 link 到商品的单个产品页面。像实施 [product_url sku="#"]
这样简单的东西会很棒。
否则,搜索 Google 未显示成功。
这是你想要的吗?
以下代码仅适用于产品 URL 的简码,您可以像这样使用它:
[product_url sku="SKUofProduct"]
或 ID [product_url id="productID"]
add_shortcode( 'product_url', 'rohils_product_url_function' );
function rohils_product_url_function($atts){
global $wpdb;
if ( empty( $atts ) ) {
return '';
}
if ( isset( $atts['id'] ) ) {
$product_data = get_post( $atts['id'] );
} elseif ( isset( $atts['sku'] ) ) {
$product_id = wc_get_product_id_by_sku( $atts['sku'] );
$product_data = get_post( $product_id );
} else {
return '';
}
if ( 'product' !== $product_data->post_type ) {
return '';
}
$_product = wc_get_product( $product_data );
return esc_url( get_post_permalink($_product->id) );
}
使用简码 [add_to_cart_url sku="#"]
将生成一个 link,只有当产品有变体时,才会将购物者带到单一产品页面。
如果我想要一个简单的产品(没有变化的产品)link 到它的单个产品页面而不是将它添加到购物车怎么办?
IMO,WooCommerce 团队似乎忽略了这一点。
我想要的只是根据商品的 SKU 生成 link 到商品的单个产品页面。像实施 [product_url sku="#"]
这样简单的东西会很棒。
否则,搜索 Google 未显示成功。
这是你想要的吗?
以下代码仅适用于产品 URL 的简码,您可以像这样使用它:
[product_url sku="SKUofProduct"]
或 ID [product_url id="productID"]
add_shortcode( 'product_url', 'rohils_product_url_function' );
function rohils_product_url_function($atts){
global $wpdb;
if ( empty( $atts ) ) {
return '';
}
if ( isset( $atts['id'] ) ) {
$product_data = get_post( $atts['id'] );
} elseif ( isset( $atts['sku'] ) ) {
$product_id = wc_get_product_id_by_sku( $atts['sku'] );
$product_data = get_post( $product_id );
} else {
return '';
}
if ( 'product' !== $product_data->post_type ) {
return '';
}
$_product = wc_get_product( $product_data );
return esc_url( get_post_permalink($_product->id) );
}