【问题标题】:Show a menu Item based on specific User role in Woocommerce根据 Woocommerce 中的特定用户角色显示菜单项
【发布时间】:2018-12-01 21:05:13
【问题描述】:

如果用户角色是“附属”,我需要帮助来显示特定菜单项。 菜单项是“附属仪表板” 不想为此类任务使用任何插件。 站点处于维护模式,因此我无法显示该站点,但是我已附上屏幕截图。 请看一下并帮助我。 谢谢

【问题讨论】:

    标签: php css wordpress woocommerce affiliate


    【解决方案1】:

    如果当前用户角色不是“附属”,以下代码将隐藏“附属仪表板”菜单项:

    代码:

    add_action( 'wp_head', 'show_hide_affiliate_menu_item', 500 );
    function show_hide_affiliate_menu_item() {
        if( ! current_user_can( 'yith_affiliate' ) )
            echo '<style> .top-bar-nav #menu-item-11874 { display: none !important } </style>'; 
    }
    

    代码进入您的活动子主题(或活动主题)的 function.php 文件中。它应该可以工作。

    【讨论】:

    • 解析错误:语法错误,意外'',500 );' (T_CONSTANT_ENCAPSED_STRING),在第 130 行的 /home/.../wp-content/themes/flatsome-child/functions.php 中期待 ',' 或 ')'
    • @AliKhan 抱歉,缺少' 字符……再试一次,这次应该可以了。
    • 我累了,但没用。但是,将 css 更改为 .top-bar-nav #menu-item-11874 {display: none} 有效,但它为每个用户禁用了菜单项。
    • @AliKhan 再次使用您的 CSS 规则更新了我的代码……在我的代码中,您需要确保 affiliate 是正确的用户角色。如果没有,它就不起作用。
    • 它工作正常。角色 ID 是“yith_affiliate”,而不仅仅是附属。
    【解决方案2】:

    只需编写一个 if 条件来执行此操作..示例

    if(Auth::user()->has('Affiliate')) {
       <a href="/affiliate-dashboard">Affiliate Dashboard</a>
    
    }
    

    但只有在您的用户分配了特定角色时才有可能

    【讨论】:

      猜你喜欢
      • 2017-06-17
      • 1970-01-01
      • 2021-07-15
      • 1970-01-01
      • 2019-05-05
      • 2018-09-20
      • 1970-01-01
      • 2014-09-25
      • 2015-05-08
      相关资源
      最近更新 更多