我遇到<div [data]="[1, 2, 'test']"></div>
,is_cart()
,is_checkout()
个问题的问题。
我正在尝试做什么:
这需要发生在页面顶部和底部,都在页面容器之外。
当我查看购物车,结帐,帐户页面时,它可以完美运行。但是,只要我查看不是购物车/结帐/帐户页面的任何其他页面,短代码仍会显示!
该网站使用Divi主题(由ElegantThemes提供)与WooCommerce。 以下是我正在使用的片段:
is_account_page()
<?php if ( ! (function_exists('is_cart') && is_cart()) || ( ! function_exists('is_account_page') && is_account_page()) || ( ! function_exists('is_checkout') && is_checkout() ) ) : ?>
<?php echo do_shortcode('[et_pb_section global_module="218"][/et_pb_section]'); ?>
<?php endif; ?>
这是整个page.php代码:
<?php endif; ?>
<?php if ( ! (function_exists('is_cart') && is_cart()) || ( ! function_exists('is_account_page') && is_account_page()) || ( ! function_exists('is_checkout') && is_checkout() ) ) : ?>
<?php echo do_shortcode('[et_pb_section global_module="247"][/et_pb_section]'); ?>
<?php endif; ?>
答案 0 :(得分:1)
如果我理解得很好,您只想在购物车,结帐和帐户WooCommerce页面输出此短代码内容
然后你应该更好地尝试这种更短的方式:
<?php
if ( class_exists( 'WooCommerce' ) && ( is_cart() || is_account_page() || is_checkout() ) ) :
echo do_shortcode('[et_pb_section global_module="247"][/et_pb_section]');
endif;
?>
使用class_exists( 'WooCommerce' )
将确保加载woocommerce插件并且条件标签可以正常运行...