私は、次のようなウーコマースでテーマを作成しています。
<ul>
<li>
<?php if ( is_user_logged_in() ) { ?>
<a href="<?php echo get_permalink( get_option('woocommerce_myaccount_page_id') ); ?>" title="<?php _e('My Account','woothemes'); ?>"><?php _e('My Account','woothemes'); ?></a>
<?php }
else { ?>
<a href="<?php echo get_permalink( get_option('woocommerce_myaccount_page_id') ); ?>" title="<?php _e('Sign-in','woothemes'); ?>"><?php _e('Sign-in','woothemes'); ?></a>
<?php } ?>
</li>
<li><a href="<?php echo get_option('home').'/'.'my-lists/'?>" title="My Wishlist">Wishlist</a></li>
<!-- <li><a href="#" title="Email updates">Email Updates</a></li>
--> <li> <?php global $woocommerce; ?>
<a id="header-ShoppingCart" class="cart-contents" href="<?php echo $woocommerce->cart->get_cart_url(); ?>" title="<?php _e('View your shopping cart', 'woothemes'); ?>"><?php echo sprintf(_n('%d item', 'My Bag (%d)', $woocommerce->cart->cart_contents_count, 'woothemes'), $woocommerce->cart->cart_contents_count);?> - <span id="header-cartCount"><?php echo $woocommerce->cart->get_cart_total(); ?></span></a>
</li>
</ul>
しかし、woocommerceプラグインが有効になっていない場合、これはサイトを壊します。 woocommerceプラグインが有効になっているかどうかはどうやって確認できますか?
'WooCommerce'クラスが存在するかどうかを確認してから、WooCommerceを必要とするコードを実行します。
<?php
if ( class_exists( 'WooCommerce' ) ) {
// code that requires WooCommerce
} else {
// you don't appear to have WooCommerce activated
}
?>
Woocommerceまたは別のプラグインがアクティブかどうかを確認するには、メッセージを表示するテンプレートに次のコードを貼り付けます。
if ( in_array( 'woocommerce/woocommerce.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) {
echo 'WooCommerce is active.';
} else {
echo 'WooCommerce is not Active.';
}
以下のコードを使用してください。マルチサイトでも動作します。
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
if(is_plugin_active( 'woocommerce/woocommerce.php')) return;