web-dev-qa-db-fra.com

Quelle est la condition pour vérifier si nous sommes dans admin ou frontend?

Quelle est la condition pour vérifier si nous sommes dans admin ou frontend?

Je veux add_action pas dans le backend, mais seulement dans le frontend.

5
Derfder

Jetez un coup d'oeil à la is_admin()étiquette conditionnelle :

function wpse106895_dummy_func() {
    if ( ! is_admin() ) {
        // do your thing
    }
}
add_action( 'some-hook', 'wpse106895_dummy_func' );

is_admin() renvoie true si l'URL à accéder est dans le tableau de bord/wp-admin. Par conséquent, sa négation (via l'opérateur not operator ) est vraie lorsqu'elle est dans l'interface.

Update , voir les commentaires ci-dessous:

function wpse106895_dummy_func() {
    // do your thing
}
if ( ! is_admin() ) add_action( 'some-hook', 'wpse106895_dummy_func' );

vous permettra d'économiser des frais généraux.

7
Johannes Pille

Le backend et le frontend sur le Web moderne sont davantage un état d'esprit qu'un motif ou code d'url distinct. Le fait qu'une page spécifique devienne un serveur ou une interface puisse changer en fonction du type d'utilisateur qui accède à la page.

Dans le contexte de wordpress, la question pourrait être reformulée en "Je souhaite ajouter une action lorsque le thème génère du HTML" (qui peut ou non couvrir toute la génération frontale dans votre cas spécifique), et pour cela, le meilleur point d'ancrage à utiliser template_redirect est déclenché juste avant que wordpress décide du modèle de thème à utiliser pour générer le code HTML.

0
Mark Kaplun