• 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 / Limitar a los autores a ver su propio contenido en WordPress

Limitar a los autores a ver su propio contenido en WordPress

Limitar a los autores a ver su propio contenido en WordPress

[ 3 octubre 2019 ] [ Autor: Jhon Marreros Guzmán ][ Core - Intermedio] [ ]

dashboard mejoras

¿Me ayudas a llegar a más gente?

Twittear Compartir LinkedIn WhatsApp

WordPress por defecto muestra todas las entradas de todos los autores en la administración del sitio, sin embargo si tenemos un sitio con muchos autores y gran cantidad de contenido, puede ser conveniente limitar a los autores a ver sólo su propio contenido.

 

Resultado Final

Al final obtendremos algo similar a lo que se muestra en la siguiente imagen:

Limitar entradas autores resultado

 

Código para limitar visualización de entradas

Puedes agregar el siguiente código al final del archivo functions.php de tu child-theme o usando algún plugin de Snippets.


function dcms_parse_query_author_only( $wp_query ) {
	global $pagenow; 

	if ( 'edit.php' == $pagenow && !current_user_can( 'edit_others_posts' ) ){
			global $current_user;
			add_action( 'views_edit-post', 'dcms_remove_some_links_views' );
            $wp_query->set( 'author', $current_user->id );
	} 
}
add_filter('parse_query', 'dcms_parse_query_author_only' );

function dcms_remove_some_links_views( $views ) {
	unset($views['all']);
	unset($views['publish']);
	unset($views['trash']);
	unset($views['draft']);
	unset($views['pending']);
	return $views;
}

En el código anterior:

  • Usamos el hook parse_query el cual hace referencia a la función dcms_parse_query_author_only
  • Esta función acepta como parámetro una variable que es un objeto llamado $wp_query
  • Comprobamos si el usuario esta en la administración del sitio y si no es administrador
  • Referenciamos a la variable global $current_user que usaremos para obtener el id del usuario
  • Utilizamos el hook views_edit-post que permite remover los enlaces superiores
  • Finalmente modificamos el objeto $wp_query filtrando por autor

 

Conclusión

Tal como hemos visto es posible filtrar los resultados de las entradas mostradas en la administración de WordPress a través de código y de esa manera limitar a los autores a ver sólo su propio contenido.

 
¿Aún con dudas?, en el siguiente video se detalla la implementación del código anterior.

Suscríbete a DecodeCMS:  

 

¿Me ayudas a llegar a más gente?

Twittear Compartir LinkedIn WhatsApp

Artículos Relacionados

  • Mostrar lista de autores en WordPressMostrar lista de autores en WordPress
  • Shortcodes en WordPress cómo usarlosQué son los Shortcodes en WordPress y cómo usarlos
  • Dominio principal WordPress en carpetaApuntar el dominio principal de un sitio WordPress a una carpeta
  • Herramienta de Salud del Sitio en WordPressHerramienta de Salud del Sitio en WordPress
Valora este artículo : 1 barra2 barras3 barras4 barras5 barras (3 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

Presentación

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

Alojamiento Wordpress

Niveles

Básico Intermedio Avanzado

Etiquetas

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

Populares

Código para procesamiento por lotes en WordPress

Agregar endpoints a la API REST de WordPress

Ocultar Widgets en dispositivos móviles

¿Qué es el Loop de WordPress?

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