在WooCommerce我的帐户页面上,我试图根据用户角色隐藏几个部分。
目前,所有直接注册WooCommerce注册表的人都被分配了用户角色“客户”。但是,只有具有“雇主”角色的用户才能实际购买...因此,我希望将“我的地址”部分隐藏给“客户”用户。
任何想法,如果我可以用功能吗? 米罗
答案 0 :(得分:0)
使用模板可以轻松实现。
在button.setPreferredSize(new Dimension(500, 100));
文件中添加此功能,以便您可以重复使用它:
functions.php
从function isEmployer(){
$currentUser = wp_get_current_user();
return in_array('employer', $currentUser->roles);
}
抓取my-account.php
模板,然后将其复制到主题的WooCommerce目录(woocommerce > templates > myaccount
)。
从那里转到第36行。这是加载地址的地方。
使用PHP if语句包装地址:
YOURTHEME > woocommerce > myaccount
答案 1 :(得分:0)
您需要覆盖主题中的my-account.php
模板,然后在某些条件逻辑中将调用包装到地址模板中。特别是current_user_can()
,它检查WordPress功能。
<?php
if( current_user_can( 'place_order' ) ){
wc_get_template( 'myaccount/my-address.php' );
} ?>
理想情况下,您可以根据雇主角色不具备客户角色的功能执行此操作,但在最坏的情况下,您可以使用角色名称àlacurrent_user_can('employer')