Nel "semplice PHP" non esistono "filtri", "do_action" o "wp_nav_menu", questi sono concetti e funzioni specifici di WordPress.
Quello che si può dire con una conoscenza di PHP generica è che
Codice PHP:
function add_search_box( $items ) {
$items .= '<li class="search-field">' . get_search_form( false ) . '</li>';
return $items;
}
dichiara una funzione, la sua posizione all'interno del sorgente è irrilevante.
Codice PHP:
<div id="main-navigation-wrap" class="primary-navigation-wrap">
<div id="main-navigation-container" class="primary-navigation-container container">
<?php do_action( 'donovan_header_search' ); ?>
<nav id="main-navigation" class="primary-navigation navigation clearfix" role="navigation">
<?php
// Display Main Navigation.
wp_nav_menu( array(
'theme_location' => 'primary',
'container' => false,
'menu_class' => 'main-navigation-menu',
'echo' => true,
'fallback_cb' => 'donovan_default_menu',
)
);
?>
</nav><!-- #main-navigation -->
</div>
</div>
Questo è codice misto HTML e PHP: le parti HTML (o testuali) verranno mostrate così come sono nella pagina, i pezzi racchiusi dai tag di PHP verranno invece eseguiti nel server. Immagino che wp_nav_menu sia una funzione di WordPress per creare una barra di navigazione.
Per il resto serve, appunto, una conoscenza specifica di WordPress.