如何解决如果满足用户角色和产品条件,则隐藏 HTML 元素
我希望满足以下条件。如果用户的用户角色为“客户”,并且他们在购物车中的任何产品 ID 为 1、2 或 3,则不会为该用户显示特定的运输选项。我已经开始了:
<?php
$user = wp_get_current_user();
if ('vendor',$user->roles ) {
?>
我不知道如何从这里开始。
解决方法
你可以简单地这样做。
function matched_cart_items( $search_products ) {
$count = 0; // Initializing
if ( ! WC()->cart->is_empty() ) {
// Loop though cart items
foreach(WC()->cart->get_cart() as $cart_item ) {
// Handling also variable products and their products variations
$cart_item_ids = array($cart_item['product_id'],$cart_item['variation_id']);
// Handle a simple product Id (int or string) or an array of product Ids
if( ( is_array($search_products) && array_intersect($search_products,cart_item_ids) )
|| ( !is_array($search_products) && in_array($search_products,$cart_item_ids)
$count++; // incrementing items count
}
}
return $count; // returning matched items count
}
// to Search Cart
if ( in_array( 'customer',(array) wp_get_current_user()->roles ) && (0 < matched_cart_items( 1,2,3 )) ) {
// Do your thing.
}
此答案的一部分摘自此处:https://stackoverflow.com/a/41266005/8298248
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。