小编典典

如何在 woocommerce 上的 php 代码上添加更多 id 以用于产品的自定义内容?

php

我是 PHP 世界的新手,我想问一下,如何在这段代码中添加更多产品 ID?

不幸的是,我不知道如何分隔多个 ID。

我想输入多个 ID,以便仅针对某些产品显示特定内容。

add_action( 'woocommerce_single_product_summary', 'add_custom_content_for_specific_product', 15 );
function add_custom_content_for_specific_product() {
    global $product;

    // Limit to a specific product ID only (Set your product ID below )
    if( $product->get_id() != 37 ) return;

    // The content start below (with translatables texts)
    ?>
        <div class="custom-content product-id-<?php echo $product->get_id(); ?>">
            <h3><?php _e("My custom content title", "woocommerce"); ?></h3>
            <p><?php _e("This is my custom content text, this is my custom content text, this is my custom content text…", "woocommerce"); ?></p>
        </div>
    <?php
    // End of content
}

阅读 76

收藏
2022-07-25

共1个答案

小编典典

如果要在特定产品上显示内容,可以使用in_array()

add_action( 'woocommerce_single_product_summary', 'add_custom_content_for_specific_product', 15 );
function add_custom_content_for_specific_product() {
    global $product;

    /* Add the product ids to the array separated by commas that you want the content below to display on
     * in_array() arguments:
     * $product->get_id() is the needle - what you're looking for in the array
     * [1,2,3,4,5] are the product ids you want to show the content on. Replace those with your actual ids
     * TRUE just makes sure it's the same type of data. In this case we set it to TRUE, since $product->get_id() is an integer and so is the data in the array.
    */ 
    if( in_array( $product->get_id(), [37,1,2,3,6,7], TRUE ) ) :

    // The content start below (with translatables texts)
    ?>
        <div class="custom-content product-id-<?php echo $product->get_id(); ?>">
            <h3><?php _e("My custom content title", "woocommerce"); ?></h3>
            <p><?php _e("This is my custom content text, this is my custom content text, this is my custom content text…", "woocommerce"); ?></p>
        </div>
    <?php
    /* If the ids are not in the array above, return the function without output. */
    else :
        return;
    endif;
}
2022-07-25