跳到主要内容

WooCommerce 中的条件标签

什么是“条件标签”?

WooCommerce 和 WordPress 的条件标签可以在您的模板文件中使用,以根据网页满足的条件来改变显示的内容。 例如,您可能希望在商店页面上方显示一段文本。 使用 is_shop() 条件标签,您可以实现这一点。

由于 WooCommerce 使用自定义文章类型,因此您也可以使用许多 WordPress 的条件标签。 请参阅 codex.wordpress.org/Conditional_Tags,了解 WordPress 包含的标签列表。

注意: 您只能在 WordPress 中 posts_selection 动作钩子 之后使用条件查询标签(wp 动作钩子是第一个可以用于这些条件的钩子)。 对于主题,这意味着如果将条件标签放在 functions.php 文件的 body 部分,则它永远无法正常工作。

可用的条件标签

所有条件标签都测试某个条件是否满足,然后返回 TRUEFALSE在每个条件标签下方列出了使该标签输出 TRUE 的条件。

以下列表包含主要的条件标签。 要查看所有条件标签,请访问 WooCommerce API 文档

WooCommerce 页面

  • is_woocommerce() 如果当前页面使用 WooCommerce 模板(购物车和结账页面是标准页面,包含短代码,因此不在此范围内),则返回 true。

主商店页面

  • is_shop() 当访问产品归档页面(商店)时,返回 true。

产品分类页面

  • is_product_category() 当浏览产品分类归档时,返回 true。
  • is_product_category( 'shirts' ) 当正在显示“shirts”分类的产品分类页面时。
  • is_product_category( array( 'shirts', 'games' ) ) 当正在显示“shirts”或“games”分类的产品分类页面时。

产品标签页面

  • is_product_tag() 当浏览产品标签归档时,返回 true。
  • is_product_tag( 'shirts' ) 当正在显示“shirts”标签的产品标签页面时。
  • is_product_tag( array( 'shirts', 'games' ) ) 当正在显示“shirts”或“games”标签的产品标签页面时。

单个产品页面

  • is_product() 当访问单个产品页面时,返回 true。 相当于 is_singular

购物车页面

  • is_cart() 当访问购物车页面时,返回 true。

结账页面

  • is_checkout() 当访问结账页面时,返回 true。

客户账户页面

  • is_account_page() 当访问客户的账户页面时,返回 true。

端点

  • is_wc_endpoint_url() 当浏览 WooCommerce 端点时,返回 true。
  • is_wc_endpoint_url( 'order-pay' ) 当正在显示用于订单支付的端点页面时。
  • 依此类推,适用于其他端点...

Ajax 请求

  • is_ajax() 当网页是通过 Ajax 加载时,返回真。

示例

这个例子说明了如何为不同的分类显示不同的内容。

if ( is_product_category() ) {

if ( is_product_category( 'shirts' ) ) {
echo '您好!来看看我们精美的 T 恤,在下面。';
} elseif ( is_product_category( 'games' ) ) {
echo '您好!想来点游戏吗?';
} else {
echo '您好!查看我们下面的产品。';
}

}