2016-06-28 25 views
1

Hia的,如何从自定义服务访问WordPress“系统”中的全局​​变量?

很新的WordPress的 - 很抱歉,如果它没有多大意义:-)

更具体地说,本是关于WooCommerce插件。

对于我所涉及的所有文件 - 我正在帮助朋友顺便说一句 - 为他创建一些漂亮的简码,我已经能够访问全球$ woocommerce。

这个全局变量有一些整洁的方法,我能够找到它的API - 所以一切都很好。

因为各种原因,现在我需要创建一个小的自定义服务,只改变客户的运输国家。

这我以前能够通过只是在做这样的事情 - 如果我想快速硬将其设置为孟加拉国(我认为是)

<?php 
    global $woocommerce; 
    $woocommerce->customer->set_shipping_country("BD"); 
?> 

现在当然,在我的设置以客户country.php服务文件我不能只是华尔兹和利用这个类与所有购物车内容全球化等。

所以 - 我的问题是,我如何获得这个,我能够发送一些会话ID,我可以请求系统请给我一些东西,如果我正确地询问正确的功能并提供一个有效的会话ID,我会得到一些回报。

谢谢你在前进,至少知道我会帮助:-)得到一些尝试

+1

全局'$ woocommerce'已被弃用d赞成函数'WC()',它返回'WooCommerce'类的单个实例。 – helgatheviking

+0

谢谢helgatheviking,很高兴知道:-) – Splynx

回答

1

似乎WordPress的已经有一套很好的AJAX钩系统。

所以我要创造我的功能,用该系统进行注册,并在我的JavaScript我可以访问的URL,通过URL此调用“/wp-admin/admin-ajax.php”

function cool_foo_func() { 

     $response = array(
      "foo" => "func" 
     ); 

     wp_send_json($response); 
    } 
    add_action('wp_ajax_foo_func', 'cool_foo_func'); 
    add_action('wp_ajax_nopriv_foo_func', 'cool_foo_func'); 

,使AJAX调用,只记得与参数动作调用=“foo_func”(或扩展对象或任何或你怎么做)

所以,现在我可以写服务,而我在同一个地方写短代码,我的问题就解决了:-)

+1

是的,在代码中也是这样做的 - 在发布修复时发生错误。 谢谢你指出,将编辑 – Splynx