I’m working on using the wc()
function in woocommerce. The documentation says it Returns the main instance of WC to prevent the need to use globals.
I can’t find any examples of the use of this and I would like to know how to use wc() to do some basic things. I understand that it returns the main woocommerce instance; and from that I can extract all the data I would need; but I don’t know the syntax for correct use … might it be something like?
$foo = WC();
$bar = $foo->cart;
echo $bar;
could someone please correct this.
Also I am trying to understand what the advantages of doing it this way instead of globalizing variables.
as what the doc in your link says. ‘prevent the need to use globals’. An example would be like this…
code using global.
global $woocommerce;
$customer_country = $woocommerce->customer->get_country();
code not using global
$customer_country = WC()->customer->get_country();
// some servers may not like like this... best is to use variables like $foo = WC(); then use $foo->customer->get_country()...
How to use WC() ? start here…
Answer:
WC() is just a function that returns an instance of the woocommerce class.
1) make sure you include the reference to the file where the function is located (see how to do that here) :
include_once WP_PLUGIN_DIR .'/woocommerce/woocommerce.php';
2) once you have that you can just add a local variable pointing to the current woocommerce instance:
$myWC = WC();
$myWC->cart->calculate_fees();
Tags: phpphp