WooCommerce产品附加信息短代码

时间:2018-05-08 04:39:05

标签: php wordpress woocommerce shortcode custom-taxonomy

我是WooCommerce的新手,正在寻找在帖子页面上显示产品属性的解决方案。 我已经进行了研究和一些测试,但似乎没有任何效果。

理想情况下,我想使用短代码获取产品ID 并在我的帖子页面上显示其所有产品属性。 像import networkx as nx G = nx.path_graph(4) #0-1-2-3 mapping = {0:1, 1:3, 3:0} H = nx.relabel_nodes(G, mapping) #1-3-2-0 #check G's adjacency matrix print(nx.to_numpy_matrix(G)) > [[ 0. 1. 0. 0.] [ 1. 0. 1. 0.] [ 0. 1. 0. 1.] [ 0. 0. 1. 0.]] #check H's adjacency matrix print(nx.to_numpy_matrix(H)) > [[ 0. 0. 1. 0.] [ 0. 0. 0. 1.] [ 1. 0. 0. 1.] [ 0. 1. 1. 0.]]

这样的东西

1 个答案:

答案 0 :(得分:0)

以下是在自定义短代码中获取产品属性的方法,您可以在其中将产品ID定义为短代码 <form> <textarea cols="30" rows="1" placeholder="Text here"></textarea> <input id="submit" type="submit" value="Send"> </form>

功能代码:

id

代码放在活动子主题(或活动主题)的function.php文件中。经过测试和工作。

短信使用

  1. 具有已定义的产品ID:

    if ( ! function_exists( 'display_product_additional_information' ) ) {
    
        function display_product_additional_information($atts) {
    
            // Shortcode attribute (or argument)
            $atts = shortcode_atts( array(
                'id'    => ''
            ), $atts, 'product_additional_information' );
    
            // If the "id" argument is not defined, we try to get the post Id
            if ( ! ( ! empty($atts['id']) && $atts['id'] > 0 ) ) {
               $atts['id'] = get_the_id();
            }
    
            // We check that the "id" argument is a product id
            if ( get_post_type($atts['id']) === 'product' ) {
                $product = wc_get_product($atts['id']);
            }
            // If not we exit
            else {
                return;
            }
    
            ob_start(); // Start buffering
    
            do_action( 'woocommerce_product_additional_information', $product );
    
            return ob_get_clean(); // Return the buffered outpout
        }
    
        add_shortcode('product_additional_information', 'display_product_additional_information');
    
    }
    

    或者在php中:

    [product_attributes id='37']
    
  2. 在现有产品页面中(当&#34;其他信息&#34;产品标签被移除时)

    echo do_shortcode("[product_attributes id='37']");
    

    或者在php中:

    [product_attributes]
    
  3. 你会得到这样的东西:

    enter image description here