WordPress Hosting

medallas

Cómo quitar capacidades de usuario personalizadas dejadas sin uso por plugins

¿A que te has dado cuenta a veces que hay plugins que añaden capacidades personalizadas a los distintos perfiles de usuario de WordPress?

Es muy común,  y lo hacen muchos plugins. Por ejemplo, si instalas WooCommerce añadirá capacidades personalizadas relacionadas con la funcionalidad de la tienda online, como la capacidad de crear productos, editar pedidos, etc., que puedes asignar a los distintos perfiles de usuario de WordPress.

También, por ejemplo, los plugins de SEO tienen la costumbre de añadir como capacidades personalizadas los permisos, asignables a cualquier usuario, de editar los datos SEO, personalizar las etiquetas y otras acciones posibles en su plugin.

Pero ¿qué pasa con esas capacidades personalizadas si desactivas uno de estos plugins?, pues que siguen ahí, registradas, innecesariamente.

¡Esto se acabó! Aquí tienes un código que debes personalizar, con el que eliminar cualquier capacidad personalizada que haya dejado algún plugin en tu WordPress, solo tienes que cambiar los nombres internos de las capacidades del código de ejemplo por las que tú quieras quitar, algo fácilmente visible con plugins como Members.

/* Quitar capacidades de perfil huerfanas dejadas por plugins */
function ayudawp_quitar_capacidades_huerfanas() {
$delete_caps = array(
'aioseo_about_us_page', 'aioseo_admin', 'aioseo_feature_manager_settings', 'aioseo_general_settings','aioseo_internal_links_settings', 'aioseo_local_seo_settings', 'aioseo_manage_seo', 'aioseo_page_advanced_settings', 'aioseo_page_analysis', 'aioseo_page_general_settings', 'aioseo_page_schema_settings', 'aioseo_page_social_settings', 'aioseo_redirects_settings', 'aioseo_search_appearance_settings', 'aioseo_seo_analysis_settings', 'aioseo_setup_wizard', 'admin_zerobs_view_invoices', 'aioseo_sitemap_settings', 'aioseo_social_networks_settings', 'aioseo_tools_settings'
);
global $wp_roles;
foreach ( $delete_caps as $cap ) {
foreach ( array_keys( $wp_roles->roles ) as $role ) {
$wp_roles->remove_cap( $role, $cap );
}
}
}
add_action( 'admin_init', 'ayudawp_quitar_capacidades_huerfanas' );

Una vez actives el código usando tu método favorito, las capacidades listadas en el array desaparecen del todo.

Compartir en redes
Resumir con IA

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en las estrellas para valorarlo!

Promedio de puntuación 5 / 5. Total de votos: 6

¡Todavía no hay votos! Sé el primero en valorar este contenido.

Ya que has encontrado útil este contenido...

¡Sígueme en las redes sociales!

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!



Sobre el autor

Scroll al inicio