Tampilkan tema yang berbeda untuk admin?

8

Saya ingin menguji beberapa perubahan tema di situs langsung saya, tetapi saya jelas tidak ingin pengguna reguler melihat kesalahan yang mungkin timbul darinya. Saya hanya ingin menduplikasi folder tema saya dan jika saya login sebagai admin, maka tema itu akan ditampilkan kepada saya, jika tidak, tema lama akan ditampilkan kepada pengguna saya.

Apakah ada plugin untuk melakukan ini?

Kyle
sumber
Anda dapat menggunakan Pergantian Tema dan Pratinjau untuk melakukan ini. wordpress.org/extend/plugins/nkthemeswitch
Lee
wordpress.org/extend/plugins/theme-test-drive melakukan apa yang Anda inginkan
ronald
1
Saat ini (November 2018) satu-satunya plugin yang diperbarui adalah Theme Switcha . Saya menemukannya mempertimbangkan daftar plugin pengalih tema yang dilaporkan oleh artikel Cara Mengembangkan Tema WordPress Di Balik Layar
Marco Panichi

Jawaban:

11

Saya baru saja menulis plugin cepat ini dan sepertinya berfungsi. Beri tahu saya jika ada cara yang lebih baik.

<?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
sumber
Petunjuk kecil, plugin User Theme di repo resmi memiliki plugin kecil untuk pekerjaan ini, tetapi tanpa opsi, solusi yang sama bagaimana jawaban ini.
bueltge
Ini adalah plugin kecil yang mengagumkan. Terima kasih sudah berbagi.
Jarmerson
1

Anda punya switch_theme()dan current_user_can( 'manage_options' );, yang hanya akan memicu akun admin.

kaisar
sumber