Sitemap in lastmod spremeljivka
3 naročniki
3 naročniki
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
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>";