Sitemap in lastmod spremeljivka

Imam vprašanje, ki se nanaša na sitemap in lastmod spremenljivko.

V sitemapu imam nastavljeno povezavo do vseh slik v moji galeriji. Imam pa vprašanje, ki se nanaša na lastmod spremenljivko, ki bi sicer lahko vsebovala datum kdaj je bila fotografija objavljena v galeriji. Ampak ker se pod njo pojavljajo novi komentarje, me zanima ali je smiselno to spremenljivko posodobiti, ko se pod fotografijo pojavi nov komentar?

14 odgovorov

echo '<xhtml:link rel="alternate" hreflang="en" href="http://www.example.com/english/" />';
    echo '<xhtml:link rel="alternate" hreflang="de" href="http://www.example.com/deutsch/" />';

Ga ne zazna oziroma ga sploh ne vstavi v xml dokument :)

<?php
echo '<?xml version="1.0" encoding="UTF-8"?>';
        echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';

        foreach($links as $link){
            echo '<url>';
            echo '<loc>'.$link->url.'</loc>';
            echo '<lastmod>'.$link->lastmod.'</lastmod>';
            echo '<changefreq>monthly</changefreq>';
            echo '<priority>0.8</priority>';
            echo '</url>';
        }
        echo '</urlset>';
?>

zakaj to nebi delalo normalno?

ne rabis komplicirat z $xmlDoc classi, ne nic... plain and simple

na koncu php skripte pa zapise to v eno xml tmp datoteko... ki jo serviras googlu...

na serverju si pa naredis recimo nek conjob, ki ti 1 na dan zalaufa to skripto, ponoci seveda, ko server ni obremenjen

1

Je že vse nastavljeno na xmlDoc, tako da sem moral najti "pravo" rešitev :)

$langEn = $tutTag->appendChild(
            $xmlDoc->createElement("xhtml:link"));
    $langEn->appendChild(
                    $xmlDoc->createAttribute("rel"))->appendChild(
            $xmlDoc->createTextNode("alternate"));
    $langEn->appendChild(
                    $xmlDoc->createAttribute("hreflang"))->appendChild(
            $xmlDoc->createTextNode("en"));
    $langEn->appendChild(
                    $xmlDoc->createAttribute("href"))->appendChild(
            $xmlDoc->createTextNode("http://www.example.com/english/"));

    $langHr = $tutTag->appendChild(
            $xmlDoc->createElement("xhtml:link")); // returns <xhtml:link/>
    $langHr->appendChild(
                    $xmlDoc->createAttribute("rel"))->appendChild(
            $xmlDoc->createTextNode("alternate"));
    $langHr->appendChild(
                    $xmlDoc->createAttribute("hreflang"))->appendChild(
            $xmlDoc->createTextNode("de"));
    $langHr->appendChild(
                    $xmlDoc->createAttribute("href"))->appendChild(
            $xmlDoc->createTextNode("http://www.example.com/deutsch/"));

če je pridobivanje datuma zadnje spremembe preveč potratno in če veš, da je komentarjev dovolj in da so precej pogosti, potem lahko tudi malce pogoljufaš:

echo "      <lastmod>".date("Y-m-d\TH:i:s", strtotime("-".round(rand(1,10))." hour"))."+01:00</lastmod>";