如何使用PHP在页面的某个部分按类别显示某些产品?

时间:2018-06-13 作者:Luke - Valkyri

我需要在主页的某个部分显示新到货,我已创建了一个新到货类别,并希望在页面上显示此类别中的产品,我不想在编写html时使用快捷码(&a);此页面的php。

任何帮助都将不胜感激,谢谢。

2 个回复
最合适的回答,由SO网友:Tim 整理而成

如果不自定义输出,您仍然可以在php内部使用短代码。看见https://docs.woocommerce.com/document/woocommerce-shortcodes/#scenario-5-specific-categorieshttps://developer.wordpress.org/reference/functions/do_shortcode/

<?php
echo do_shortcode(\'[products category="new-arrivals"]\');
?> 
或者,如果您需要定制产品的输出,那么只需使用wc_get_products 获取产品列表并对其进行迭代。看见https://github.com/woocommerce/woocommerce/wiki/wc_get_products-and-WC_Product_Query

<?php
$args = array(
    \'category\' => array( \'new-arrivals\' ),
);
$products = wc_get_products( $args );
foreach ($products as $product) {
    echo $product->get_title() . \' \' . $product->get_price();
}
?>

SO网友:Debbie Kurth

假设woocommerce插件已就位:

 if ( in_array( \'woocommerce/woocommerce.php\', apply_filters( \'active_plugins\', get_option( \'active_plugins\' ) ) ) ) 
     {
      $args = array(\'category\' => array( \'Your category name\' ), );
      $products = wc_get_products( $args );
      foreach ($products as $product) 
        {
         DebugLog(\'Title: \'. $product->get_name() . \' Price:  \' . $product->get_price()) ;
        }
     }
$product->get\\u title(),似乎并不总是显示产品名称。

结束

相关推荐