Avisos
Vaciar todo

Hosting WordPress 70% dto Dominios promo

[Resuelto] cambiar url del logo segun rol del usuario  

 
Carlos
 Carlos
Reputable Member

Buenas,

Existe algun plugin para cambiar la url del logo segun el rol de usuario o algun codigo para hacerlo?

He visto alguno pero no me aclaro bien donde colocar las url y el rol de usuario.

Un saludo.

Contenido solo visible a usuarios registrados

Respondido : 08/10/2021 11:15 pm
Bruno
 Bruno
Soporte CMS Webempresa Moderator

Que tal Carlos,

En este caso no hay un plugin en especifico que haga el cambio tal cual como lo solicitas, sin embargo hay snippets de código que son posibles puedan funcionarte a lograr lo que deseas como es el siguiente

add_filter( 'generate_logo_href','tu_add_custom_logo_href' );
function tu_add_custom_logo_href( $url )
{
$user = wp_get_current_user();
if ( in_array( 'rol1', (array) $user->roles ) ) {
return '/enlace1';
}

$user = wp_get_current_user();
if ( in_array( 'rol2', (array) $user->roles ) ) {
return '/enlace2';
}

// All the other pages
return $url;
}

Si te fijas asignamos el nombre del rol de usuario donde dice "rol1" y "rol2", también cambiamos la URL que les corresponde en "/enlace1" y "/enlace2"

De no funcionar es necesario adaptarlo a tu sitio y para ello puedo recomendarte a nuestros colaboradores que con gusto podrán hacerlo a medida de lo que requieres https://www.webempresa.com/directorio-colaboradores.html

Saludos!

Respondido : 08/10/2021 11:36 pm

Cursos Gratuitos WordPress

Carlos
 Carlos
Reputable Member

@bruno-vichetti

Gracias Bruno,

Lo he probado pero no se si estoy haciendo algo bien, por ejemplo para el rol1 que seria suscriptor lo hice asi 

add_filter( 'generate_logo_href','tu_add_custom_logo_href' );
function tu_add_custom_logo_href( $url )
{
$user = wp_get_current_user();
if ( in_array( 'Subscriber', (array) $user->roles ) ) {
return ' https://academia.safegest.com/curso-consejero-seguridad-adr/ ';
}

$user = wp_get_current_user();
if ( in_array( 'rol2', (array) $user->roles ) ) {
return '/enlace2';
}

// All the other pages
return $url;
}

Estaria correcto asi el codigo?

Respondido : 09/10/2021 12:44 am
Carlos
 Carlos
Reputable Member

Me funciona perfecto Bruno muchas gracias, habia puesto malo subscriber, es con la primera "s" en minusculas.

Muchas gracias

Respondido : 09/10/2021 12:51 am

wpdoctor-revisa-la-salud-de-tu-wordpress

Bruno
 Bruno
Soporte CMS Webempresa Moderator

Hola Carlos,

Genial! me alegra saber que te ha funcionado, recuerda que cualquier otra consulta estaremos atentos

Saludos!

Respondido : 09/10/2021 12:54 am