Задача
Есть самописный сайт, где только html страницы. Надо на все страницах проставить код аналитики.
Решение
Если страниц немного, к примеру 5, то можно вручную проставить, а вот если их 50 и более, как то уже много глупой работы вырисовывается.
Надо процесс автоматизировать. Данный код вполне с этим справляется.
<?php
$dir_home = __DIR__;
$dir = $dir_home.'/html';
$files = scandir($dir);
$code = '
<!-- begin Analitic -->
ваш код
<!-- end Analitic -->';
foreach($files as $file){
if (($file !== '.')&&($file !== '..')){
$x = file_get_contents($dir.'/'.$file, false);
$x = str_replace('</body>',$code.'</body>', $x);
SaveFile($x, $dir.'/'.$file);
echo $file.' - edit<br/>';
}
}
function SaveFile($xml,$filename)
{
$fp=fopen($filename,'a'); //открытие файла 'sitemap.xml'
flock($fp,LOCK_EX); //блокировка файла
ftruncate ($fp,0); //удаляем старое содержимое файла
fwrite($fp,$xml); //записываем в него новое содержимое
fflush($fp); //очищение файлового буфера и запись в файл
flock($fp,LOCK_UN); //снятие блокировки
fclose($fp); //закрытие файла
}
?>

