我在为functions.php中的单个产品页面中的产品获取产品SKU时遇到了很多麻烦。我有多个单独的产品页面,我希望根据产品显示不同的文本。我创建了一个儿童主题,我正在使用functions.php文件。我是新来的wordpress和编辑主题,所以我不太理解操作的顺序。我能够使代码循环工作,并为我提供所有产品的所有SKU,但这与我所在的实际页面无关。Woocommerce在functions.php中为单个产品页面获取产品sku
我试过一堆东西。常见的解决方案似乎是:
global $product;
echo $product->get_sku();
但这并不起作用。出于某种原因,$ product变量在functions.php脚本中为null。
我已遍历所有产品帖子并获取帖子ID的循环。我也尝试获取当前页面的ID,但也没有成功(下面的代码是从另一个网站复制的)。任何帮助将不胜感激。谢谢。
$full_product_list = array();
$loop = new WP_Query(array('post_type' => array('product', 'product_variation'), 'posts_per_page' => -1));
while ($loop->have_posts()) : $loop->the_post();
$theid = get_the_ID();
$product = new WC_Product($theid);
你在运行你的代码时使用了什么钩子/模板? – helgatheviking
我创建了一个儿童主题,并且正在编辑functions.php脚本。我对Woocommerce的钩子没有问题。我的行为看起来像这样:add_action('woocommerce_after_single_product_summary','wc_product_add_text',35); – brad14