¿Mostrar un tema diferente para el administrador?

8

Me gustaría probar algunos cambios de tema en mi sitio en vivo, pero obviamente no quiero que los usuarios habituales vean los errores que puedan surgir. Me gustaría duplicar mi carpeta de temas y, si estoy conectado como administrador, se me mostrará ese tema; de lo contrario, se mostrará el tema anterior a mis usuarios.

¿Hay un complemento para hacer esto?

Kyle
fuente
Puede usar Cambio de tema y Vista previa para hacer esto. wordpress.org/extend/plugins/nkthemeswitch
Lee
wordpress.org/extend/plugins/theme-test-drive hace exactamente lo que quieres
ronald
1
Por el momento (noviembre de 2018), el único complemento que se actualiza es Theme Switcha . Lo encontré considerando la lista de complementos de cambio de tema informados por el artículo Cómo desarrollar temas de WordPress detrás de escena
Marco Panichi

Respuestas:

11

Acabo de escribir este complemento rápido y parece funcionar. Avísame si hay una mejor manera.

<?php

/*
Plugin Name: Theme Switch if Admin
Description: Display different theme to user if logged in as admin
Author: Kyle Barber
*/
    add_filter('template', 'change_theme');
    add_filter('option_template', 'change_theme');
    add_filter('option_stylesheet', 'change_theme');
    function change_theme($theme) {
        if ( current_user_can('manage_options') ) {
            $theme = 'twentyeleven';
        }

        return $theme;
    }
Kyle
fuente
Sugerencia pequeña, el plugin User Theme en el repositorio oficial tiene un pequeño plugin para este trabajo, pero sin opciones, la misma solución que esta respuesta.
bueltge
Este es un pequeño plugin increíble. Gracias por compartir.
Jarmerson
1

Tienes switch_theme()y current_user_can( 'manage_options' );, que solo se activará para las cuentas de administrador.

emperador
fuente