aqui você pode ver esses niveis, peguei do wordpress
| Capability | Administrator | Editor | Author | Contributor | Subscriber |
|---|---|---|---|---|---|
| level_10 | |||||
| level_9 | |||||
| level_8 | |||||
| level_7 | |||||
| level_6 | |||||
| level_5 | |||||
| level_4 | |||||
| level_3 | |||||
| level_2 | |||||
| level_1 | |||||
| level_0 |
User Level to Role Conversion
- User Level 0 converts to Subscriber
- User Level 1 converts to Contributor
- User Level 2 converts to Author
- User Level 3 converts to Editor
- User Level 4 converts to Editor
- User Level 5 converts to Editor
- User Level 6 converts to Editor
- User Level 7 converts to Editor
- User Level 8 converts to Administrator
- User Level 9 converts to Administrator
- User Level 10 converts to Administrator
if (is_user_logged_in()){
$current_user = wp_get_current_user();
$user_id = $current_user->ID;
$user_info = get_userdata( $user_id);
$user_level = $user_info->user_level;
$username = $user_info->user_login;
$first_name = $user_info->first_name;
$last_name = $user_info->last_name;
}
para se mexer nesses niveis e criar novas capacidades dentro do blog utilizei o plugin
dentro do arquivo loop-products-cat.php na pasta woocommerce que é copiada para seu tema no momento da instalação, você pode colocar o seguinte codigo
<?php
global $woocommerce, $woocommerce_loop, $product_category_found;
$product_category_found = false;
?>
<?php
foreach ($product_categories as $category) :
if ($category->parent != $product_category_parent) continue;
$product_category_found = true;
$woocommerce_loop['loop']++;
//informações do usuario
if (is_user_logged_in()){
$current_user = wp_get_current_user();
$user_id = $current_user->ID;
$user_info = get_userdata( $user_id);
$user_level = $user_info->user_level;
$username = $user_info->user_login;
$first_name = $user_info->first_name;
$last_name = $user_info->last_name;
}
//vejo nivel de usuario e digo se ele pode ou nao ver alguma pagina
$restrito = '';
if($user_level < 3){
//aqui eu digo quais páginas usuários de nível menor que 3 não podem ver através do titulo da categoria
$restrito = array("Materiais de apoio","Impressos","Brindes","Presentes");
}
//se for diferente do array acima aparece caso seja menor que 3 o nível de usuário
if (!in_array($category->name, $restrito)){
?>
<li class="product sub-category <?php if ($woocommerce_loop['loop']%$woocommerce_loop['columns']==0) echo 'last'; if (($woocommerce_loop['loop']-1)%$woocommerce_loop['columns']==0) echo 'first'; ?>">
<?php do_action('woocommerce_before_subcategory', $category); ?>
<a href="<?php echo get_term_link($category->slug, 'product_cat'); ?>">
<?php do_action('woocommerce_before_subcategory_title', $category); ?>
<h3><?php echo $category->name; ?> <?php if ($category->count>0) : ?><mark class="count">(<?php echo $category->count; ?>)</mark><?php endif; ?></h3>
<?php do_action('woocommerce_after_subcategory_title', $category); ?>
</a>
<?php do_action('woocommerce_after_subcategory', $category); ?>
</li><?php
}
endforeach;
?>
dessa forma você coloca dentro do array quais categorias os usuarios que nao tem niveis de permissao podem ver, no meu caso utilizei pq temos franquias e somente elas podem ver algumas paginas e clientes nao.
essa foi mais uma necessidade que tive e essa foi a forma encontrada, pode ser que você encontre outra, se sim, avise para que possamos um ajudar o outro
até a proxima
Oi Alexandre
ResponderExcluirEstamos montando aqui. no Instituto Hélio Teixeira. um site que usa o plugin BuddyPress e estamos precisando contratar alguém para nos ajudar a configurá-lo. Já adiantamos muito, só falta mesmo configurar os fórums.
Você poderia nos ajudar a fazer isso?
Fico no aguardo!