Решил, почему создаются несколько главных страниц. В переменной $url хранится url детальной страницы, но походу некоторые элементы были без url, и поэтому он выводил просто ссылку домена. Сделал проверку на пустоту и теперь не выводит пустые элементы
if ($v['URL']) {
$xml_content.='
<url>
<loc>'.$site_url.$v['URL'].'</loc>
</url>';
}