• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar a la barra lateral principal

DecodeCMS

Tu WordPress a otro Nivel ...

  • Acerca de
  • Contacto
  • Inicio
  • Tutoriales
    • Themes
    • Plugins
    • Core
    • Recursos
  • Cursos
  • Acceder
    • Mis cursos
    • Mi Cuenta
    • Acceder
Inicio / Tutoriales / Core / Mostrar contenido Premium sin Plugins

Mostrar contenido Premium sin Plugins

[ 10 diciembre 2024 ] [ Autor: Jhon Marreros Guzmán ][ Core - Intermedio] [ ]

funcionalidad

Suscríbete a DecodeCMS:  

En este artículo veremos como mostrar el contenido de una categoría de WordPress sólo para usuarios que tengan un determinado rol, veremos como realizarlo directamente a través de código.

 

Resultado Final

Al final queremos restringir el contenido para usuarios que no tengan el rol de «premium» y que aparezca en su lugar un mensaje de contenido exclusivo.

Contenido restringido mensaje

 

Generalidades

Existen muchos plugins con la funcionalidad de contenido restringido para WordPress, sin embargo en este artículo veremos algo que sirva como base para una funcionalidad simple de restricción de contenido por categoría y para un determinado rol.

 

Código de creación de rol y restricción de categoría

Puedes usar el siguiente código para crear un nuevo rol llamado «Premium» en WordPress

// Crea un nuevo rol llamado Premium
add_action( 'init', 'add_affiliate_role' );
function add_affiliate_role(): void {
	if ( get_role( 'premium' ) ) {
		return;
	}
	add_role( 'premium', 'Premium', array( 'read' => true ) );
}

 
El siguiente código restringe el contenido para una categoría llamada «Premium» si el usuario no tiene el rol de «Premium».

// Muestra contenido de la categoría Premium sólo a los usuarios que tenga el rol Premium
add_filter( 'the_content', 'show_premium_content' );

function show_premium_content( $content ) {
	if ( in_category( 'premium' ) && ! current_user_can( 'premium' ) ) {
		$content = '➜ <strong>Este contenido es exclusivo para usuarios Premium.</strong>';
	}

	return $content;
	}
Ambos códigos puedes agregarlos como parte del archivo functions.php de tu tema hijo, o usar algún plugin de Snippets.

El código anterior:

  • Primero creamos el nuevo rol, usamos el Hook init de WordPress que hace referencia a la función add_affiliate_role
  • Comprobamos si el rol premium ya existe, sino usamos la función add_role para agregarlo.
  • Para la restricción de contenido usamos el Hook de filtro the_content que hace referencia a la función show_premium_content
  • Dentro de la función hacemos la comprobación si el contenido que vemos corresponde a la categoría «premium» y además si el usuario tiene el rol de «premium»
  • Si estas condiciones no se cumplen entonces mostramos un mensaje en lugar del contenido original

 

Conclusión

Como has podido comprobar, podemos restringir fácilmente a través de código el contenido de entradas de una categoría y que sólo sea visible por usuarios que tengan un determinado rol.

 

¿Me ayudas a llegar a más gente?

Twittear Compartir LinkedIn WhatsApp

Artículos Relacionados

  • Quitar el menú de WooComerce en la administración de WordPress para ciertos usuariosQuitar el menú de WooComerce en la administración de WordPress para ciertos usuarios
  • Eliminar automáticamente las imágenes al borrar una entradaEliminar automáticamente las imágenes al borrar una entrada
  • Ocultar precios de productos a usuarios visitantesOcultar precios de productos a visitantes en WooCommerce
  • Deshabilitar Información de Usuarios de la REST API de WordPressDeshabilitar Información de Usuarios de la REST API de WordPress
Valora este artículo : 1 barra2 barras3 barras4 barras5 barras (1 votos, promedio: 5,00 de 5)
Cargando...

Interacciones con los lectores

Para escribir código envolver con: <pre class="language-xxx"><code> </code></pre> ,reemplaza las xxx (php, css, html)

*

* Gravatar habilitado

Barra lateral principal

Curso Decodifica WordPress

Únete a DecodeCMS

Recibirás como regalo:

Guia práctica con video:
¿Quieres agregar código a WordPress? Revisa las diferentes opciones que tienes.Ver más

Omnisend
Alojamiento Wordpress

Niveles

Básico Intermedio Avanzado

Etiquetas

accesibilidad css dashboard editor error funcionalidad herramientas imagen js librería mejoras optimización seguridad SEO social woocommerce

Populares

Optimizar la carga de Javascript en WordPress con Async y Defer

Habilitar sonido en video theme Twenty Seventeen

Usar Firebug para modificar un theme WordPress

Datos estructurados para preguntas frecuentes con Yoast SEO

© logo decode pie
Política de Privacidad | Política de devoluciones
Copyrigth 2026 Todos los derechos reservados