Quali vantaggi nell'usare get_header() rispetto a include('header.php')?
Il tema base - in effetti ogni tema che ho esaminato - usa get_header() per includere il file header, ma non riesco a vedere il motivo per farlo.
Quali sono i vantaggi nell'usare get_header()
invece di un semplice include('file.php')
?

Utilizzare funzioni generiche significa rinunciare a uno strato dell'API di WordPress:
- il hook
get_header
verrebbe perso; - la compatibilità con il caricamento di diversi header per nome (
"header-{$name}.php"
) verrebbe persa; - l'utilizzo di
locate_template()
verrebbe perso, il che probabilmente distruggerebbe la compatibilità con i child theme.
Puoi sempre consultare il codice sorgente per vedere esattamente cosa fa la funzione.
WordPress utilizza funzioni proprie non senza motivo. Di solito è per ragioni specifiche di compatibilità o funzionalità.

Puoi anche utilizzare la funzione get_header() per ottenere un file di intestazione diverso. Dai al file di intestazione personalizzato il nome header-qualcosa.php, quindi usa
get_header('qualcosa');
e WP utilizzerà il file header-qualcosa.php invece di header.php.
Nota che la sintassi è un po' strana - potresti pensare di dover inserire il nome del file completo, ma invece no - devi inserire solo la parte dopo il trattino. Vorrei avere indietro quell'ora della mia vita ora :(

Il motivo principale è che puoi agganciarti a get_header, il che significa che puoi fare operazioni relative all'header in un child theme, o in un file di funzioni separato senza dover modificare i file del tema genitore.
Non vuoi modificare i file del tema genitore perché rende più difficile aggiornarli, poiché dovrai riapplicare le tue modifiche. Se quelle modifiche sono isolate in un child theme, l'aggiornamento diventa MOLTO più semplice
