woocommerce 产品内容的简码是什么?

what is the shortcode for woocommerce product content?

我到处搜索,找不到 woocommerce 产品内容区域的短代码,它在 elementor 中作为小部件提供,但短代码呢?

您必须通过产品 ID 创建产品内容简码。

现在我已经为您创建了这样一个简码:

function woo_product_details($atts = array()){
   if(isset($atts['product_id']) && !empty($atts['product_id'])){
        $html = '';
        $product_id                = $atts['product_id'];
        $product                   = wc_get_product($product_id);

        $product_name              = $product->get_name();
        $product_slug              = $product->get_slug();
        //$product_sku               = $product->get_sku();
        //$product_description       = $product->get_description();
        $product_short_description = $product->get_short_description(); 
        //$product_price             = $product->get_price();
        $product_formated_price    = $product->get_price_html();
        //$product_regular_price     = $product->get_regular_price();
        //$product_sale_price        = $product->get_sale_price();  
        $product_image= wp_get_attachment_image_src( get_post_thumbnail_id($product_id), 'single-post-thumbnail' );
        
        $html .= '<div class="card">
            <img src="'.$product_image[0].'" alt="'.$product_name.'" data-id="'.$product_id.'" style="width:100%">
            <h1>'.$product_name.'</h1>
            <p class="price">'.$product_formated_price.'</p>
            <p>'.$product_short_description.'</p>
            <p><a href="'.site_url().'?add-to-cart='.$product_id.'&quantity=1">Add to Cart</a></p>
        </div>';
        return $html;
    }
}
add_shortcode('product_detail', 'woo_product_details');

您可以相应地添加/更新 HTML 和产品信息,如果您想从现有功能中获取另一个产品变量 set/change 显示应该检查 https://www.businessbloomer.com/woocommerce-easily-get-product-info-title-sku-desc-product-object/ 并根据给定的简码功能相应地复制页面。

如何使用简码

a) 您可以像这样直接在 PHP 页面上调用:

<?php echo do_shortcode('[product_detail product_id = '1002']'); ?>

b) 您可以调用您的 post 和来自管理面板的页面,如下所示:

[product_detail product_id = '1002']

其中 1002 是产品编号