【发布时间】:2016-03-04 06:15:14
【问题描述】:
我正在尝试找到一种方法从当前产品 SKU 中获取产品 ID 并通过简码显示它。到目前为止,我来了,但由于某种原因,我使用的这段代码没有得到正确的 ID,我不知道为什么,因为我在 php 方面不太好。
解决:
function get_product_id_by_sku_fc( $atts ){
global $product;
$atts = shortcode_atts( array(
'sku' => '',
), $atts );
$product_id = null;
// get product ID out of the defined SKU in the shortcode [get_product_id_by_sku sku="SKU"]
if (!empty( $atts['sku'] ) ) {
$product_id = wc_get_product_id_by_sku( $atts['sku'] );
$product = wc_get_product( $product_id );
} else {
//get product ID out of the current_product sku, shortcode [get_product_id_by_sku]
$sku = $product->get_sku();
$product_id = wc_get_product_id_by_sku( $sku );
$product = wc_get_product( $product_id );
}
return $product_id;
}
add_shortcode( 'get_product_id_by_sku', 'get_product_id_by_sku_fc');
感谢大家的帮助!
PS:如果你会和函数发生冲突,那么只需自定义函数名称和简码名称即可。
【问题讨论】:
-
你是如何定义
$sku变量的?
标签: php wordpress get woocommerce shortcode