Saidiplaanid on kasulikud otsingurobotidele, et teada saada paremini teie saidi struktuure. Need on eriti kasulikud, kui teie sait sisaldab mitusada lehekülge. Saidikaartide käsitsi esitamiseks saate sisse logida Google Webmasterisse või Bing Masterisse (või muudesse sarnastesse veebisaidi tööriistadesse). Kui teil on palju saidikaarte (või palju veebisaite), on see peavalu. Kuidas oleks saidikaartide automaatse esitamisega (et otsingumootorid teaksid, et teil on värskendusi)?
saidikaart
Esmalt määrake saidiplaanide URL-i massiiv PHP abil :
$sitemaps = array(
"<a class="vglnk" target="_blank" href="https://helloacm.com/sitemap.xml" rel="nofollow"><span>https</span><span>://</span><span>helloacm</span><span>.</span><span>com</span><span>/</span><span>sitemap</span><span>.</span><span>xml</span></a>",
"<a class="vglnk" target="_blank" href="https://codingforspeed.com/sitemap.xml" rel="nofollow"><span>https</span><span>://</span><span>codingforspeed</span><span>.</span><span>com</span><span>/</span><span>sitemap</span><span>.</span><span>xml</span></a>",
"<a class="vglnk" target="_blank" href="https://codingforspeed.com/forum/sitemap.php" rel="nofollow"><span>https</span><span>://</span><span>codingforspeed</span><span>.</span><span>com</span><span>/</span><span>forum</span><span>/</span><span>sitemap</span><span>.</span><span>php</span></a>",
"<a class="vglnk" target="_blank" href="https://uploadbeta.com/sitemap.xml" rel="nofollow"><span>https</span><span>://</span><span>uploadbeta</span><span>.</span><span>com</span><span>/</span><span>sitemap</span><span>.</span><span>xml</span></a>",
"<a class="vglnk" target="_blank" href="https://rot47.net/sitemap.xml" rel="nofollow"><span>https</span><span>://</span><span>rot47</span><span>.</span><span>net</span><span>/</span><span>sitemap</span><span>.</span><span>xml</span></a>",
"<a class="vglnk" target="_blank" href="https://justyy.com/sitemap.xml" rel="nofollow"><span>https</span><span>://</span><span>justyy</span><span>.</span><span>com</span><span>/</span><span>sitemap</span><span>.</span><span>xml</span></a>",
"<a class="vglnk" target="_blank" href="https://steakovercooked.com/sitemap.xml" rel="nofollow"><span>https</span><span>://</span><span>steakovercooked</span><span>.</span><span>com</span><span>/</span><span>sitemap</span><span>.</span><span>xml</span></a>",
"<a class="vglnk" target="_blank" href="https://steakovercooked.com/wedding/sitemap.xml" rel="nofollow"><span>https</span><span>://</span><span>steakovercooked</span><span>.</span><span>com</span><span>/</span><span>wedding</span><span>/</span><span>sitemap</span><span>.</span><span>xml</span></a>"
);
Seejärel määrake kaks funktsiooni:
// cUrl handler to ping the Sitemap submission URLs for Search Engines…
function Submit($url){
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
return $httpCode;
}
function SubmitSiteMap($url) {
$returnCode = Submit($url);
if ($returnCode != 200) {
echo "Error $returnCode: $url <BR/>";
} else {
echo "Submitted $returnCode: $url <BR/>";
}
}
Seejärel pole vaja teha muud, kui itereerida kõik saidikaardid ja esitada need erinevatele otsingumootoritele:
foreach ($sitemaps as $sitemapUrl) {
$sitemapUrl = htmlentities($sitemapUrl);
//Google
$url = "<a class="vglnk" target="_blank" href="http://www.google.com/webmasters/sitemaps/ping?sitemap=".$sitemapUrl" rel="nofollow"><span>http</span><span>://</span><span>www</span><span>.</span><span>google</span><span>.</span><span>com</span><span>/</span><span>webmasters</span><span>/</span><span>sitemaps</span><span>/</span><span>ping</span><span>?</span><span>sitemap</span><span>=".$</span><span>sitemapUrl</span></a>;
SubmitSiteMap($url);
//Bing / MSN
$url = "<a class="vglnk" target="_blank" href="http://www.bing.com/webmaster/ping.aspx?siteMap=".$sitemapUrl" rel="nofollow"><span>http</span><span>://</span><span>www</span><span>.</span><span>bing</span><span>.</span><span>com</span><span>/</span><span>webmaster</span><span>/</span><span>ping</span><span>.</span><span>aspx</span><span>?</span><span>siteMap</span><span>=".$</span><span>sitemapUrl</span></a>;
SubmitSiteMap($url);
// Live
$url = "<a class="vglnk" target="_blank" href="http://webmaster.live.com/ping.aspx?siteMap=".$sitemapUrl" rel="nofollow"><span>http</span><span>://</span><span>webmaster</span><span>.</span><span>live</span><span>.</span><span>com</span><span>/</span><span>ping</span><span>.</span><span>aspx</span><span>?</span><span>siteMap</span><span>=".$</span><span>sitemapUrl</span></a>;
SubmitSiteMap($url);
// moreover
$url = "<a class="vglnk" target="_blank" href="http://api.moreover.com/ping?sitemap=".$sitemapUrl" rel="nofollow"><span>http</span><span>://</span><span>api</span><span>.</span><span>moreover</span><span>.</span><span>com</span><span>/</span><span>ping</span><span>?</span><span>sitemap</span><span>=".$</span><span>sitemapUrl</span></a>;
SubmitSiteMap($url);
}
Lisa algusesse järgnev, mis ajalimiiti ei sea, kui soovid selle töö lisada crontab.
Lõpuks saate selle lisada crontab -e
@daily php submit_sitemap.php
Ja funktsiooni Submit saab lihtsustada, kasutades faili_get_contents, kui te ei taha teada, kas esitamine õnnestus (tagastuskoodi pole).
function Submit($url) {
file_get_contents($url);
}
Täielik lähtekood on saadaval aadressil github: submit_sitemaps.php