我正在使用插件Chargebee WP Membership
连接到他们的API以处理付款。目前,他们只使用短代码来限制内容。
我想做的是在页面模板中输出这些短代码的函数。到目前为止,我已经尝试do_shortcode
方法,但宁愿直接访问该函数。
Github文件:https://github.com/brendenplugin/chargebee-wp-membership-plugin/blob/master/admin/helper/class-chargebee-membership-shortcodes.php
对于cb_content_show
短代码格式当前为:
[cb_content_show level="1"] This content will be shown to any users who have plan associated with Level 1 [/cb_content_show]
直接访问此功能的最佳方法是什么?我相信它源于函数
render_content_show_hide()
- 第707行
public function render_content_show_hide( $attr, $content = null, $shortcode_name = \'\' ) { ...
理想情况下,我希望访问函数,例如:
<?php
if (cb_content_show(\'level\') == 1) :
//do something
endif;
?>
最合适的回答,由SO网友:scopeak 整理而成
通过访问get_user_meta
价值观
<?php
$user_id = get_current_user_id();
$key = \'chargebee_user_subscriptions\';
$all_meta_for_user = get_user_meta( $user_id, $key, true );
print_r($all_meta_for_user);
SO网友:Maxim Sarandi
看起来像函数render_content_show_hide()
是类的方法。如果希望直接访问此函数,可以创建新的类实例。
如果插件代码如下所示:
class Shortcode_Builder{
//...methods
public function render_content_show_hide( $attr, $content = null, $shortcode_name = \'\' ) {
//...
}
//...other methods.
}
创建新实例
$builder = new Shortcode_Builder();
以及访问您的功能
$builder->render_content_show_hide()