【问题标题】:Woocommerce Get Product Values by IDWoocommerce 通过 ID 获取产品价值
【发布时间】:2016-05-11 23:05:58
【问题描述】:

尝试通过产品 ID 获取自定义模板上的产品数据,现在我有此代码来获取产品标题。

$productId = 164;
echo $p_title = get_the_title( $productId );

寻找简短描述、价格、产品图片、产品网址、产品品牌。或者可能是循环会更好,但该循环应该与产品静态 ID 一起使用。

提前致谢。

【问题讨论】:

    标签: php wordpress woocommerce


    【解决方案1】:

    创建一个新的产品对象可能会更好地为您服务。

    $productId = 164;
    $product = wc_get_product( $productId );
    echo $product->get_title();
    echo $product->get_price_html();
    

    请注意,简短描述只是帖子的post_excerpt。如果在循环之外使用($post 是自动定义的),那么您需要直接获取帖子。

    $post = get_post( $productId );
    
    echo apply_filters( 'woocommerce_short_description', $post->post_excerpt );
    

    或者,如果你已经定义了你可以做的产品对象

    echo apply_filters( 'woocommerce_short_description', $product->post->post_excerpt );
    

    因为 WooCommerce 产品类将自动使用 get_post() 定义 $product->post 属性。

    apply_filters()表示此时可以附加函数来修改$product->post->post_content的内容。至少,我知道wpautop() 附加到woocommerce_short_description 过滤器以创建分段符。

    【讨论】:

    • 我不明白如何在这里为摘录应用过滤器,我也需要 url
    • 如果您可以使用产品 ID 解释更多关于产品的 post_excerpt 的信息。那会很棒
    • 我不确定您还需要了解什么,但我已尝试详细说明。
    • 谢谢你太棒了
    • @LatheeshVMVilla wc_get_product 不是一个类。它是一个包装函数,它使用WC_Product_Factory 类根据产品类型检索正确的产品类。因此,假设$productId 实际上是一个产品帖子类型,那么$product = wc_get_product( $productId ); 将返回一个产品类对象。
    猜你喜欢
    • 1970-01-01
    • 2023-04-07
    • 1970-01-01
    • 1970-01-01
    • 2016-09-27
    • 1970-01-01
    • 1970-01-01
    • 2014-07-04
    相关资源
    最近更新 更多