2017-02-22 22 views
2

Это мой код на файл sitemap.php для моего динамической карты сайта, но я хочу, чтобы распечатать или показать весь эти данные страницы на «sitemap.xml» из-за Google всегда считаю sitemap.xml для sitemap.This страница работает нормально, но я хочу, чтобы все данные на sitemap.xml. Как это сделать?Как распечатать или показать данные sitemap.php на sitemap.xml?

<?php 
header("Content-type: text/xml"); 
echo '<?xml version="1.0" encoding="UTF-8" ?>'; 
include 'includes/connectdb.php'; 
?> 

<urlset xmlns="http://www.google.com/schemas/sitemap/0.84" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.google.com/schemas/sitemap/0.84 http://www.google.com/schemas/sitemap/0.84/sitemap.xsd"> 

    <url> 
     <loc>http://www.mobilesapp.com/</loc> 
     <priority>1.00</priority> 
    </url> 

<?php 
    $stmt = $con->prepare("SELECT url,modified FROM localnews"); 
    $stmt->execute(); 
    $rows = $stmt->fetchAll(PDO::FETCH_ASSOC); 
    foreach($rows as $row){ 
?> 
<url> 
    <loc>http://www.mobilesapp.com/<?= $row['url'] ;?></loc> 
    <lastmod><?= $row['modified']; ?></lastmod> 
    <changefreq>always</changefreq> 
    <priority>1</priority> 
</url> 
<?php } ?> 

<?php 
    $stmt = $con->prepare("SELECT url,modified FROM socialnews"); 
    $stmt->execute(); 
    $rows = $stmt->fetchAll(PDO::FETCH_ASSOC); 
    foreach($rows as $row){ 
?> 
<url> 
    <loc>http://www.mobilesapp.com/<?= $row['url'] ;?></loc> 
    <lastmod><?= $row['modified']; ?></lastmod> 
    <changefreq>always</changefreq> 
    <priority>1</priority> 
</url> 
<?php } ?> 

</urlset> 
+0

Попробуйте этот код в начале заголовка файла ('Content-type: текст/XML'); header ('Content-Disposition: attachment; filename = "sitemap.xml"'); – user247217

+0

Вам нужно правило перезаписи. Я просто удалю содержимое файла PHP, так как он работает нормально, и единственное, что вам нужно, это показать в качестве ответа для другого URL-адреса. –

+0

@ user247217 дорогой, ваш код загружает только мой php-файл в xml-файл. Он не перезаписывает мой уже существующий файл ** sitemap.xml ** –

ответ

1
<?php 
    $xml = '<urlset xmlns="http://www.google.com/schemas/sitemap/0.84" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.google.com/schemas/sitemap/0.84 http://www.google.com/schemas/sitemap/0.84/sitemap.xsd">'; 
    // mysql select 
    foreach ($rows as $row) { 
     // add next part to xml 
     $xml .= ' 
     <url> 
      <loc>http://www.mobilesapp.com/'.$row['url'].'</loc> 
      <lastmod>'.$row['modified'].'</lastmod> 
      <changefreq>always</changefreq> 
      <priority>1</priority> 
     </url> 
     '; 
    } 
    $xml .= '</urlset>'; 
    // show 
    echo $xml; 
    // and save to file 
    file_put_contents('sitemap.xml', $xml); 
    ?> 
+0

file_put_contents ('sitemapxml.xml', $ xml); –