نمایش دادن و یا ندادن xml نقشه سایت

سلام

خوب خیلی سریع بریم سر اصل مطلب با توجه به موضوع گفته شده

خوب چون همه اهمیت نقشه سایتو میدونید کاری به توضیح و تشریح مضایای اون نداریم

شیوه نگارش (syntax) نقشه سایت


شیوه نگارش (syntax) یک نقشه سایت معمولی به شکل زیر است:

 

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://www.example.com/</loc>
</url>
<url>
<loc>http://www.example.com/?link=2</loc>
</url>
.
.
.
</urlset>

 

توضیح:
- encoding نقشه سایت باید UTF-8 باشد.
- sitemaps.org سایت رسمی پروتکل نقشه سایت است.
- تگ urlset برای هر نقشه سایت، تنها یک بار تکرار می شود.
- لینک ها را (ترجیحا) از بالاترین سطح تا پائین ترین سطح در تگ های url مرتب کنید.
- برای صفحه نخست سایت حتما / را در پایان آدرس قرار دهید.
- از به کار بردن کاراکترهای &, ', ", > و < در آدرس لینک ها خودداری کنید و به جای آنها از جایگزین html استفاده نمائید.

ایجاد نقشه سایت داینامیک


مسلما تعداد لینک های یک سایت داینامیک به چند عدد محدود نخواهد بود لذا برای مدیریت نقشه سایتمان باید از زبان های سمت سرور و از جمله php استفاده کنیم، در کد زیر ما اطلاعات فرضی را از پایگاه داده فراخوانی می کنیم و برای هر مطلب، لینک آن را به نقشه سایتمان اضافه کرده و در پایان لینک ها را در یک فایل با نام sitemap.xml کپی می کنیم:

//ابتدا یک فایل با نام sitemap.xml بسازید.
//ابتدا فایل را دریافت کرده و یک بار محتویات آن را پاک می کنیم
$file = "sitemap.xml";
chmod($file, 0755);//تنظیم مجوز های ویرایش
$fileHandle = fopen($file, 'w+')//استفاده از متد w+
or die("خطا: سطح دسترسی برای ویرایش فایل در سرور تنظیم نیست!");
$empty = "";//متغیر برابر خالی
//نوشتن در فایل
$stringData = $empty;
fwrite($fileHandle, $stringData);
fclose($fileHandle);

//باز کردن مجدد فایل
$file = "sitemap.xml";
chmod($file, 0755);
$fileHandle = fopen($file, 'a')//این بار با متد a
or die("خطا: سطح دسترسی برای ویرایش فایل در سرور تنظیم نیست!");
    
$start = "
\n";
//نوشتن فایل با متد a
$stringData = $start;
fwrite($fileHandle, $stringData);

//صفحه نخست
$home = "http://example.com/\n";
//نوشتن
$stringData = $home;
fwrite($fileHandle, $stringData);
//قبل از اتصال به پایگاه داده باید اطلاعات اتصال را تعریف کنید
//دریافت اطلاعات پست ها از دیتابیس و تبدیل به لینک
$result = mysql_query("SELECT * FROM posts ORDER BY rank ASC")
or die(mysql_error());
while($row = mysql_fetch_array($result)){
    $id = $row['id'];
    $link = "http://example.com/?id=$id\n";
    //نوشتن
    $stringData = $link;
    fwrite($fileHandle, $stringData);
}
$end = "";//بستن نقشه سایت
//نوشتن
$stringData = $end;
fwrite($fileHandle, $stringData);
fclose($fileHandle);
?>

توضیح:
- فایلی با نام sitemap.xml ترجیحا در ریشه سایت بسازید.
- در کد بالا ابتدا بعد از فراخوانی فایل یک بار با متد +w محتویات آن را پاک سازی می کنیم (این کار برای جلوگیری از تکرار لینک ها در هر بار به روزرسانی نقشه سایتمان است).
- مجدد فایل را این بار با متد a باز می کنیم و می نویسیم (فرق متد a و +w در این است که متد a به محتویات کنونی فایل خللی وارد نمی کند و در انتها کد جدید را اضافه می نماید اما متد +w فایل را خالی کرده و مجدد می نویسد).
- در مثال عنوان شده اطلاعات را از جدولی فرضی به نام posts دریافت کرده ایم و برای هر مطلب یک لینک به خروجی می دهیم.
- لینک های ما باید استاندارد html باشند و لذا استفاده از کارکترهای خاص که پیشتر گفتیم مجاز نمی باشد، می توانید از تابع htmlspecialchars در php نیز استفاده کنید.
- برای آپدیت مرتب نقشه سایت می توانید به عنوان مثال آن را در صفحه ای که مطالبتان را از آن ارسال می کنید ایمپورت کنید تا با هر بار ارسال مطلب جدید، اطلاعات به روز رسانی شوند.
استفاده از نقشه سایت به لینک های معمولی محدود نمی شود، محتویات دیگر صفحات وب از جمله تصاویر، ویدئوها، اخبار و... را نیز می توان در Sitemap گنجاند:


        xmlns:image="http://www.sitemaps.org/schemas/sitemap-image/1.1"
        xmlns:video="http://www.sitemaps.org/schemas/sitemap-video/1.1">

http://www.example.com/

http://example.com/imagename.jpg

     
http://www.example.com/videofilename.flv
http://www.example.com/videoplayer.swf?video=videofilename
http://www.example.com/thumbs/videofilename.jpg
عنوان ویدئو  
توصیف ویدئو



http://www.example.com/?link=2

.
.
.

افزودن تاریخ و اطلاعات بیشتر به sitemap


علاوه بر تگ که آدرس لینک ها را در آن قرار می دهیم، از چند تگ (اختیاری) دیگر نیز می توانیم در نقشه xml سایت خود استفاده کنیم، از جمله برای نمایش تاریخ ایجاد یا به روز رسانی لینک، که دوره تغییر یک لینک را مشخص می کند و که میزان اهمیت آن را نسبت به سایر لینک ها نشان می دهد.

 


http://www.example.com/
2012-03-20
monthly
0.8


http://www.example.com/?link=2
2012-02-18T21:45:19+03:30
weekly
1

.
.
.

توضیح:
- فرمت می تواند به صورت تاریخ ساده، یا تاریخ همراه زمان و اختلاف زمانی باشد (در مثال بالا از هر دو روش استفاده کرده ایم).
- می تواند مقادیری مثل ماهیانه (monthly)، هفتگی (weekly)، ساعت به ساعت (hourly)، روزانه (daily)، سالیانه (yearly)، همیشگی (always) و یا هرگز (never) باشد.
- میزان اهمیت لینک را مشخص می کند، این مقدار می تواند به ترتیب از کم اهمیت ترین (0.0) تا پراهمیت ترین (1.0) در نوسان باشد.

نمایش ندادن نقشه سایت xml

اگر بعد از انجام این مراحل دید سایت مپ یا همون نقشه ای که درست کردید، نشون داده نمیشه

خیلی نگران نشید

چون برخی مواقع دیده شده که این اتفاق بعد از 48 تا 72 ساعت و ایندکس شدن سایت این اتفاق میوفته خصوصا برای سایت هایی بازدید های کمتری دارند

در ضمن برای نمایش نقشه سایت خیلی راحت پس از وارد کردن اسم سایتتون کافیه در ادامش بزنید sitemap.xml

مثلا ما برای سایتمون مینویسیم: http://www.goolexa.com/sitemap.xml

 

خسته نباشید

یکم بحث جدی بود زیاد زمان برد

نمونه ای از آخرین کارهای ما

1 دیدگاه

  1. نمایش سئو سایت گفت:

    هزینه نمایش دادن و یا ندادن نقشه xml سایت و طراحی و سئو سایت و همچنین پشتیبانی سایت رو چطور اعلام می کنید؟
    میخوام باهاتون کار کنم در زمینه پشتیبانی سایت

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

اگر ربات نیستی جواب بده *

پشتیبانی سایت سئو سایت

خدمات سایت

سئو

خدمات سایت

پشتیبانی سایت سئو سایت خدمات سایت