Non sono per nulla un esperto di wp ... giusto l'ABC. Ma questo modo di lavorare all'interno del template è palesemente errato.

Non sò se hai presente cosa sono gli hook in wordpress (in questo caso the_title ).

Per ottenere quello che vuoi fare nel file functions.php del tuo tema devi aggiungere il seguente comando:

Codice PHP:
<?php
function personalizza_title($title){
    if(
is_home()){
        return 
bloginfo('name'); 
        }
    else if(
is_tag() OR is_category() OR is_Archive()){
        return 
bloginfo('name') . ' | '$title;
        }
    return 
$title;
    }

add_filter('the_title''personalizza_title');
Nel templeate (head.php) avrai in modo pulito e trasparente.

Codice PHP:
<title><?php wp_title(''true); ?></title>