WordPress funziona senza un tema?
WordPress funziona senza un tema? Se sì, come funziona? Per favore, spiega brevemente.
Se WordPress sta visualizzando contenuti senza un tema, cosa controlla l'output?
Credo ci sia una canzone per questo:
"Immagina non ci sia un tema. Non è difficile provarci. Niente inferno sotto di noi. Solo cielo sopra di noi..." ;-)
Quindi in questo sogno immaginario:
puoi ancora recuperare i feed RSS dal tuo sito:
example.com/feed/puoi ancora accedere al backend:
example.com/wp-login.phppuoi ancora accedere al backend e lavorarci (quasi) come al solito:
example.com/wp-admin/la pianificazione degli articoli non funzionerà, quindi riceverai il messaggio Missed schedule.
wp-cronnon sarà affidabile.puoi ancora accedere a
/wp-admin/admin-ajax.phppuoi usare gli hook
template_redirectetempate_includeper controllare l'output. Prova ad esempio questo piccolo plugin:<?php /** Plugin Name: No-Theme-Day **/ add_action( 'template_redirect', function() { wp_die( __( "Ehi! Oggi è il No-Theme-Day!" ) ); } );...
ps: Perdonate la mia risposta da venerdì - "Ma non sono il solo" ;-)
Bella canzone e un'implementazione ancora più bella. John Lennon sarebbe orgoglioso. +1
Pieter Goosen
Decisamente un voto positivo per la citazione di Imagine :) peccato non poterti darne un altro per la risposta.
Nicolai Grossherr
Sono completamente d'accordo con @ialocin Purtroppo posso dare solo un upvote per risposta.
Pieter Goosen
Mi sono appena imbattuto nell'exit mancante nell'hook del template redirect, una coincidenza da venerdì ;-) @PieterGoosen
birgire
Hahaha, ti stavo prendendo in giro, ho visto la modifica. Ma comunque, non male come fine settimana. John Lennon è sempre apprezzato :-)
Pieter Goosen
Dato che utilizzare WordPress senza un tema è piuttosto raro, gli aspetti tecnici di questa configurazione non ricevono molta attenzione.
Innanzitutto bisogna comprendere che ci sono diversi "endpoint" nel core di WordPress che gestiscono le richieste.
- Il lato amministrativo ha i suoi (numerosi) endpoint, come
wp-admin/index.php. - Il frontend passa quasi universalmente attraverso
index.phpnella root, ma di solito è "nascosto" dai permalink ottimizzati
Se dai un'occhiata a quest'ultimo file, troverai questa riga:
define('WP_USE_THEMES', true);
Quindi tipicamente WordPress si aspetta che il frontend abbia sempre un tema e configura l'ambiente di runtime di conseguenza. Questa costante non controlla molto, solo se i template del tema verranno caricati in template-loader.php.
Nota che non impedisce ai temi genitore/figlio (se presenti) di essere caricati durante il processo di avvio del core.
Quindi per impostazione predefinita WordPress si aspetta che sia presente almeno un tema, che sia abilitato e che abbia template da utilizzare per la visualizzazione del frontend.
Tuttavia, questa è solo una questione di impostazioni predefinite e può essere completamente configurata diversamente. In tal caso WordPress continuerà a funzionare pienamente sul lato amministrativo, mentre sul frontend tutte le richieste che dipendono dai template del tema cesseranno di visualizzare qualsiasi contenuto.