En WPBeginner, normalmente personalizamos los perfiles de usuario en nuestros sitios web. Encontramos que cuando solo permites a los usuarios realizar tareas que son necesarias para su perfil, reduces la posibilidad de errores y mejoras la seguridad del sitio web.
Algunos de nuestros lectores nos han preguntado si es posible limitar a los autores la posibilidad de ver y editar solo sus propias entradas en sus blogs WordPress de varios autores. Por razones de privacidad, prefieren que sus colaboradores no vean las entradas de otros autores hasta que se publiquen.
Bueno, definitivamente es posible, y en este artículo, le mostraremos cómo limitar fácilmente a los autores a ver y gestionar solo sus propias entradas en el escritorio de WordPress.
¿Por qué limitar a los autores a sus propias entradas?
Por defecto, su sitio web WordPress mostrará todas las entradas y páginas a todos los usuarios, independientemente de su perfil en el área de administrador. Tanto si eres autor, editor, colaborador o administrador, podrás ver todos los artículos.
Esto no suele ser un problema si los autores forman parte de su empresa o equipo.
Sin embargo, limitar a las personas a ver sus propias entradas es útil en ciertas situaciones. Por ejemplo, si dirige un sitio web con varios autores, puede ser útil impedir que los autores vean los artículos de otros autores en la reseña / valoración.
Dicho esto, echemos un vistazo a cómo puede limitar a los autores la visualización de sus propias entradas en el administrador de WordPress. Estos son los debates que trataremos en este artículo:
Limitar los autores a sus propias entradas usando un plugin
Utilizando un plugin de WordPress, puede permitir fácilmente a los autores ver solo sus propias entradas sin necesidad de editar el código.
Para este tutorial, usaremos el plugin PublishPress Permissions. Es un plugin gratuito que le permite gestionar los permisos de WordPress y trabaja fuera de la caja para limitar los escritores a sus propios artículos.
También hay una versión premium disponible en el lote PublishPress Pro, que ofrece más ajustes de permisos, como quién puede acceder a la biblioteca de medios. Sin embargo, puede empezar con la versión gratuita.
En primer lugar, tendrá que instalar y activar el plugin PublishPress Permissions. Para más detalles, puede seguir nuestra guía sobre cómo instalar un plugin de WordPress.
Una vez que el plugin esté activado, limitará automáticamente a los autores y editores para que solo vean sus propias entradas en el área de administración de WordPress.
Por ejemplo, si estás conectado como administrador y te diriges a Entradas ” Todas las entradas desde tu Escritorio, verás todas las entradas.
Sin embargo, si accede al área de administración de WordPress desde la cuenta de un autor, observará que solo estarán visibles las entradas creadas por el autor.
No podrás ver entradas escritas por otros usuarios.
Ahora, ¿qué pasa si quieres que tus editores puedan acceder a todas las entradas para que puedan reseñarlas / valoración? Veamos cómo hacerlo.
Permitir a los editores ver todas las entradas
El problema del método anterior es que solo permite a los administradores ver todas las entradas.
Muchos sitios de WordPress tienen editores responsables de corregir los artículos enviados por otros autores y colaboradores invitados. El uso de este plugin restringirá a los editores solo a sus propias entradas.
Sin embargo, puede permitir que los editores revisen el contenido de diferentes autores utilizando un plugin como PublishPress Capabilities plugin o añadiendo código a los archivos de tema de su sitio. Le mostraremos ambos métodos.
Uso del plugin de capacidades de PublishPress
PublishPress Capabilities es otro plugin creado por PublishPress. Para este tutorial, utilizaremos la versión gratuita. También hay una versión pro que puede obtener al suscribirse a una cuenta PublishPress Pro.
En primer lugar, deberá instalar y activar el plugin PublishPress Capabilities en su sitio web WordPress. Puede seguir nuestra guía paso a paso sobre cómo instalar un plugin de WordPress.
Una vez que el plugin esté activo, siga adelante y haga clic en Capacidades en su menú de administrador de WordPress. Se abrirá la página “Capacidades de rol”, donde podrás cambiar los permisos de los distintos perfiles de usuario.
A continuación, seleccione el perfil de usuario que desea editar en el menú desplegable de la esquina superior izquierda.
Una vez que haya seleccionado el perfil “Editor”, deberá asegurarse de que la casilla de verificación “Editar otros” está activada en los ajustes de capacidades de edición.
Esto permitirá a los editores editar otras entradas.
A continuación, desplácese hasta la sección Capacidades adicionales y asegúrese de que la casilla de verificación “listar otras entradas” está activada / activa.
De este modo, cualquier persona con el perfil de editor podrá ver las entradas de otros autores.
Ahora, guarda tus ajustes y visualiza la sección Entradas de tu sitio web accediendo como editor. Si puedes ver y editar las entradas de otros autores, significa que has establecido correctamente los ajustes.
Añadir código personalizado al tema
Otra forma de permitir a los editores ver todas las entradas es añadiendo código personalizado a los archivos de tu tema. Sin embargo, no recomendamos este método para principiantes, ya que implica la edición de código y puede romper su sitio web.
Para empezar, los usuarios avanzados pueden añadir manualmente este código al archivo functions. php de su tema, pero recomendamos utilizar un plugin de fragmentos de código como WPCode.
Una vez que haya instalado y activado el plugin WPCode, debe dirigirse a la página Code Snippets ” + Add Snippet en su escritorio de WordPress.
Una vez allí, debe pasar el cursor del ratón por encima de “Añadir su código personalizado (nuevo fragmento)” y, a continuación, hacer clic en el botón “+ Añadir fragmento de código personalizado” que aparece.
Esto abrirá una página donde puedes añadir un fragmento de código personalizado. En primer lugar, debe dar al fragmento de código un título que describa lo que hace el fragmento, como “Permitir a los editores ver todas las entradas”.
A continuación, deberá pegar el siguiente fragmento de código en el panel Vista previa del código:
function posts_for_current_author($query) {
global $pagenow;
if( 'edit.php' != $pagenow || !$query->is_admin )
return $query;
if( !current_user_can( 'edit_others_posts' ) ) {
global $user_ID;
$query->set('author', $user_ID );
}
return $query;
}
add_filter('pre_get_posts', 'posts_for_current_author');
A continuación, asegúrese de elegir el tipo de código “Fragmento de código PHP” en el menú desplegable.
Por último, asegúrese de establecer el ajuste “Activo” y, a continuación, haga clic en el botón “Guardar fragmento de código” para guardarlo y activarlo.
Este código permite a cualquier usuario con capacidad para editar entradas ajenas ver todas las entradas. Esto significa que los editores y administradores podrán ver todas las entradas. Los usuarios con otros perfiles, como colaboradores o autores, solo verán sus propias entradas.
Para más detalles, puede consultar nuestra guía sobre cómo añadir código personalizado en WordPress sin romper nada.
Si utiliza perfiles de usuario personalizados en su sitio, debe tener en cuenta que los usuarios que pueden editar entradas añadidas por otros usuarios también podrán verlas en la ficha.
Bonificación: Limitar a los autores la visualización de entradas o páginas específicas
También puede limitar los autores, editores, colaboradores y otros perfiles de usuario para ver, editar y borrar determinadas entradas y páginas del blog.
Usando el plugin Permisos de PublishPress, puede decidir fácilmente qué entradas y páginas específicas puede ver la gente en el tablero de su sitio web.
Para empezar, instale y active el plugin PublishPress Permissions en su sitio web. Puede consultar nuestro tutorial sobre cómo instalar un plugin de WordPress.
Digamos que quieres que un artículo específico solo pueda ser editado por el editor del sitio web y nadie más.
Para ello, puede editar esa entrada. Una vez que esté en el editor de bloques de WordPress, simplemente desplácese hacia abajo hasta la casilla ‘Permisos: Editar esta entrada’ caja meta.
A continuación, tendrás que hacer clic en el menú desplegable de todos los demás perfiles de usuario y elegir la opción ‘Bloqueado’. Por defecto, el permiso se establecerá en ‘por defecto: Sí’, donde todo el mundo puede editar la entrada.
Después, asegúrate de que dejas los ajustes para el editor en la opción “Activado” o “por defecto: Sí”. Cuando hayas establecido los permisos, asegúrate de actualizar la entrada de tu blog.
Guías de expertos sobre cómo cambiar las capacidades de los perfiles de usuario en WordPress
Esperamos que este artículo te haya ayudado a aprender cómo limitar los autores a sus propias entradas en el área de administración de WordPress. Quizás quieras ver otros artículos relacionados con cómo cambiar las capacidades de los perfiles de usuario de WordPress:
- Cómo añadir o eliminar capacidades a los perfiles de usuario en WordPress
- Guía para principiantes sobre los perfiles y permisos de usuario en WordPress
- Glosario: Permisos de usuario
- Cómo permitir que los colaboradores editen sus entradas en WordPress después de ser aprobados
- Cómo permitir a los editores editar solo ciertas páginas en WordPress
- Cómo evitar que los autores borren entradas en WordPress
- Cómo permitir a los autores revisar las entradas publicadas en WordPress
- Cómo restringir el acceso a la biblioteca de medios a las subidas propias del usuario en WordPress
- Cómo permitir que los usuarios de un blog moderen los comentarios en WordPress
- Cómo permitir a los usuarios editar sus comentarios en WordPress
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Abu-Bakr Sediq
Hello there, I really enjoy this website! I have a question. How to rescrict (limit, Hide) specific options or feature while Author Post New Product or Add News post. To be more clear; How to limit user from some option in “Add New Post” while publishing post. Sorry for my very bad English
WPBeginner Support
If you want to limit the options for a post’s author based on their role, you would want to take a look at our guide below!
https://www.wpbeginner.com/beginners-guide/wordpress-user-roles-and-permissions/
Administrador
Lee
Hi there!
Thank you for this great article.
Can I use the Permissions plug in without the Capabilities plug in?
Or does the capabilities plug in work as a ‘base’ for the Permissions one, and they must be used together?
WPBeginner Support
You can use one without the other, they modify different options available to the different user levels.
Administrador
lionel
what happens when I remove the plugin? will any changes be removed too and will all users go back to the defaults or will those users require special attention to have PublishPress roles removed? thanks!
WPBeginner Support
If you remove the plugin it would revert the settings from the plugin.
Administrador
Eslam Magdy
Thank u so much man!,,, thanks work for me
WPBeginner Support
Glad our article was able to help!
Administrador
Ignazio
You are really great and I congratulate you. If I may, I would like to ask you something. If I wanted to modify this code to make the posts limited in view and edit only to their author as far as drafts are concerned?
WPBeginner Support
For what you are wanting, you may want to modify the role permissions or give permissions, you would want to take a look at our article below on permissions:
https://www.wpbeginner.com/beginners-guide/wordpress-user-roles-and-permissions/
Administrador
Naomi Blindeman
Thank you! Lifesaver!
WPBeginner Support
You’re welcome
Administrador
Dan D
Exactly what I was looking for. No custom code was needed.
WPBeginner Support
Glad our guide was helpful
Administrador
Guto Rockwell
Works like a charm, many thanks
WPBeginner Support
Glad our guide could help
Administrador
Zakaria
Your code working perfectly. Thanks!!!
WPBeginner Support
You’re welcome
Administrador
Noriel
Your recommended plugin is already outdated, any other reliable plugin?
WPBeginner Support
This article was last updated in 2015, we will be sure to look for an alternative and update this article when we are able.
Administrador
Fernando Aureliano
It works for all post types?
WPBeginner Support
If you’re using the plugin you would need to reach out to the plugin’s support for that specific question.
Administrador
Davood Denavi
Does the code mentioned in this article work with all post types? I have some custom post types on a clients site and the plugin worked we do not have time to test the site right now after adding more code and we are trying to allow editors to view all posts.
Thank in advance for your help!
Gulshan Kumar
How to filter out comments according to currently logged in user?
I want to restrict listing of all comments for the contributor. I want to allow showing and moderation option only for those posts which belong to them.
Rohit Mewada
Same question, how hide comment also from other user.
Brandon Evans
Does this plugin include hiding of “pages” from non-authors? I see everything listed here says posts but would pages be included in that? Our site uses pages more than posts.
Ravijit
How to hide comments from contributers in wordpress dashboard ???
Tom
Hey there,
is there a way to exclude specific Post Types from that query ?
regards Tom
Sam
What if i have multiple admin and i want admin’s can see only their posts ??
barisla
very useful thanks
Charlie
Works great. The other problem I have is that it still displays the post count for other users. So for example there are 105 published posts even if the current user only has 2 published posts.
Any idea how to rectify this?
Sherwin Ramnarine
I realise this is months later so I guess the reply is really for others with the same problem. Try adding this to your functions.php. Think I got it on Wordpress.StackExchange.com >>
// Remove Post Counts
// Create a specific hook
add_filter(“views_edit-post”, ‘custom_editor_counts’, 10, 1);
function custom_editor_counts($views) {
// var_dump($views) to check other array elements that you can hide.
unset($views[‘all’]);
unset($views[‘publish’]);
unset($views[‘pending’]);
unset($views[‘trash’]);
return $views;
}