WordPress fonctionne-t-il sans thème? Si oui, comment ça marche? Veuillez expliquer brièvement.
Si WordPress affiche du contenu sans thème, qu'est-ce qui contrôle la sortie?
WordPress fonctionne-t-il sans thème? Si oui, comment ça marche? Veuillez expliquer brièvement.
Si WordPress affiche du contenu sans thème, qu'est-ce qui contrôle la sortie?
Réponses:
Je pense qu'il y a une chanson pour ça:
"Imaginez qu'il n'y ait pas de thème . C'est facile si vous essayez. Pas d'enfer en dessous de nous. Au dessus de nous seulement du ciel ..." ;-)
Donc, dans ce rêve imaginaire:
vous pouvez toujours récupérer les flux RSS de votre site:
example.com/feed/
vous pouvez toujours vous connecter à votre backend:
example.com/wp-login.php
vous pouvez toujours accéder au backend et y travailler (presque) comme d'habitude:
example.com/wp-admin/
la planification des publications ne fonctionnera pas, vous obtiendrez le message de planification manquée .
wp-cron
ne sera pas fiable.
vous pouvez toujours accéder /wp-admin/admin-ajax.php
vous pouvez utiliser les crochets template_redirect
et tempate_include
pour contrôler la sortie. Essayez par exemple ce petit plugin:
<?php
/** Plugin Name: No-Theme-Day **/
add_action( 'template_redirect',
function()
{
wp_die( __( "Jibby! It's the No-Theme-Day today!" ) );
}
);
...
ps: Pardonnez ma réponse du vendredi - " Mais je ne suis pas le seul " ;-)
Étant donné que l'utilisation de WordPress sans thème est assez rare, les détails techniques de celui-ci n'attirent pas beaucoup l'attention.
Vous devez d'abord comprendre qu'il existe plusieurs "points de terminaison" dans le noyau WordPress traitant les demandes.
wp-admin/index.php
.index.php
à la racine même, mais elle est généralement "cachée" par de jolis permaliensSi vous regardez ce dernier fichier, il a la ligne suivante:
define('WP_USE_THEMES', true);
Par conséquent, WordPress s'attend généralement à ce que le front-end ait toujours un thème et configure l'environnement d'exécution en conséquence. Cette constante ne contrôle pas beaucoup, uniquement si des modèles de thème vont être chargés template-loader.php
.
Notez qu'il n'empêche pas les thèmes parent / enfant (s'ils sont présents) d'être chargés pendant le processus de démarrage principal.
Par défaut, WordPress s'attend donc à ce qu'au moins un thème soit présent, activé et ait des modèles à utiliser à des fins d'affichage frontal.
Cependant, ce n'est qu'une question de valeurs par défaut et peut être complètement configuré. Dans ce cas, WordPress continuera de fonctionner pleinement du côté administrateur, tandis que du côté frontal, toutes les demandes qui s'appuient sur le modèle de thème cesseront d'afficher quoi que ce soit.