Как менять Title у сайта каждые 30 минут?
$titles = [
    '7:00' =>  "Название сайта one",
    '7:30' =>  "Название сайта two",
];
$half_hour = date('G:i', floor(time()/1800)*1800);
echo $titles[$half_hour] ?? "Default title";
Зависит от того, как устроен сайт. 
Если статический - нужен скрипт, который будет запускаться, определять какой тайтл должен быть и записывать его в файл.
Если динамический - то надо посмотреть как генерируется тайтл, в эту функцию и вставить проверку на время и вывод нужного тайтла.
А ещё пользователи могут быть из разных часовых поясов, например. Что делать в таком случае?