راهنمای کامل بهینه‌سازی فایل robots.txt و sitemap.xml

راهنمای کامل بهینه‌سازی فایل robots.txt و sitemap.xml

در دنیای پیچیده‌ی سئو تکنیکال، هر سایت مثل یک شهر دیجیتال است؛ شهری که گوگل و سایر موتورهای جستجو در آن رفت‌و‌آمد می‌کنند تا خانه‌ها (صفحات) را شناسایی و در نقشه‌ی خود ثبت کنند. اما هیچ شهری بدون قوانین ترافیکی دوام نمی‌آورد. در سئو هم این قوانین را دو فایل کوچک اما حیاتی تعیین می‌کنند: robots.txt و sitemap.xml.

این دو فایل در ظاهر ساده‌اند، اما در واقع نقشه‌ی راه و تابلوهای راهنمای اصلی برای خزنده‌های گوگل به‌حساب می‌آیند. robots.txt مشخص می‌کند کجاها مجاز به ورود هستند و کدام مسیرها باید بسته بمانند؛ درحالی‌که sitemap.xml نقشه‌ای دقیق از تمام مسیرهای ارزشمند سایت ارائه می‌دهد تا هیچ صفحه‌ای از دید موتورهای جستجو پنهان نماند.

سایت‌هایی که این دو فایل را جدی نمی‌گیرند، معمولاً با مشکلاتی مثل ایندکس ناقص صفحات، هدررفت بودجه خزش (Crawl Budget) و افت رتبه در نتایج جستجو روبه‌رو می‌شوند. اما اگر درست تنظیم شوند، می‌توانند مسیر گوگل را کوتاه‌تر، دسترسی به محتوای کلیدی را سریع‌تر و ایندکس صفحات را دقیق‌تر کنند.

در این راهنمای جامع از سئو مورچه‌ای، یاد می‌گیریم چطور با درک اصولی و پیاده‌سازی دقیق فایل‌های کنترلی، ساختار فنی سایت را به‌گونه‌ای تنظیم کنیم که گوگل عاشق خزش آن شود و هیچ صفحه‌ی ارزشمندی از قلم نیفتد.

فهرست مطالب

چرا گوگل به robots.txt و sitemap اهمیت می‌دهد

گوگل روزانه میلیاردها صفحه را در سراسر وب بررسی می‌کند. اما برای اینکه بتواند بین این حجم عظیم از داده‌ها مسیر درستی پیدا کند، به دو چیز نیاز دارد: دستورالعمل و نقشه راه. فایل robots.txt مثل تابلوهای راهنمای خیابان است و sitemap.xml مثل نقشه‌ی رسمی شهر.

بدون robots.txt، گوگل ممکن است وارد بخش‌هایی از سایت شود که نه ارزش ایندکس دارند و نه ارتباطی با هدف اصلی سایت. این یعنی هدر رفتن «بودجه خزش»؛ منابعی محدود که گوگل برای بررسی هر سایت در نظر می‌گیرد. وقتی بودجه‌ی خزش به صفحات بی‌اهمیت اختصاص یابد، ممکن است صفحات مهم‌تر مثل مقالات جدید یا صفحات خدمات دیرتر ایندکس شوند.

از طرف دیگر، sitemap.xml به گوگل کمک می‌کند تا دقیق‌تر و سریع‌تر بداند چه صفحاتی وجود دارند، کدام‌ها تازه منتشر شده‌اند و کدام‌ها تغییر کرده‌اند. این فایل مثل یک لیست VIP برای گوگل عمل می‌کند؛ به او می‌گوید کدام صفحات اولویت دارند و کجا باید دقیق‌تر نگاه کند.

ترکیب درست این دو فایل باعث می‌شود خزش گوگل هدفمندتر، سریع‌تر و بهینه‌تر انجام شود. درست مثل مورچه‌هایی که مسیرشان را می‌دانند و هر دانه را در جای خودش می‌گذارند، اگر ساختار فنی سایتت دقیق طراحی شده باشد، گوگل هم با نظم مورچه‌وار صفحاتت را شناسایی و رتبه‌بندی می‌کند.

تفاوت بین robots.txt و sitemap.xml و ارتباط آن‌ها

در نگاه اول، robots.txt و sitemap.xml هر دو فایل متنی ساده به‌نظر می‌رسند؛ اما در واقع نقش‌های کاملاً متفاوتی در سئو تکنیکال دارند. اگر robots.txt را «دروازه‌بان سایت» بدانیم، sitemap.xml «راهنمای گردشگر» است. یکی مسیرهای ممنوعه را مشخص می‌کند و دیگری بهترین مسیرها را نشان می‌دهد.

فایل robots.txt وظیفه دارد تعیین کند کدام بخش‌ها از سایت باید برای خزنده‌های موتورهای جستجو قابل دسترسی باشند و کدام نه. این فایل به گوگل می‌گوید از چه مسیرهایی نباید عبور کند تا هم منابع سرور حفظ شود و هم صفحات بی‌اهمیت یا تکراری در نتایج جستجو ظاهر نشوند.

در مقابل، sitemap.xml فهرستی از تمام صفحات مهم سایت است که باید توسط گوگل ایندکس شوند. این فایل به گوگل کمک می‌کند تا صفحات تازه، مقالات جدید و بخش‌های به‌روزشده را سریع‌تر پیدا کند. به‌عبارت ساده‌تر، robots.txt محدود می‌کند؛ sitemap.xml معرفی می‌کند.

اما جادوی اصلی زمانی اتفاق می‌افتد که این دو فایل باهم هماهنگ باشند. یعنی آدرس سایت‌مپ در انتهای فایل robots.txt درج شود تا خزنده‌ها به‌محض ورود به سایت، مستقیماً نقشه‌ی کامل آن را دریافت کنند. این هماهنگی مثل همکاری بین نگهبان ورودی و راهنمای داخل ساختمان است؛ اولی مسیرهای بسته را مشخص می‌کند، دومی مسیرهای باز را نشان می‌دهد.

وقتی این ارتباط درست برقرار شود، گوگل بدون اتلاف وقت می‌داند کجا را نبیند و کجا را با دقت بررسی کند. نتیجه؟ افزایش سرعت ایندکس صفحات، بهبود بودجه خزش، و نظم فنی بیشتر در ساختار سایت. دقیقاً همان چیزی که در فلسفه‌ی سئو مورچه‌ای 🐜 از آن به‌عنوان «خزش هوشمند و منظم» یاد می‌کنیم.

robots.txt چیست و در کجای سایت قرار دارد

فایل robots.txt یکی از ساده‌ترین اما مهم‌ترین فایل‌های فنی هر وب‌سایت است؛ فایلی متنی (Text File) که در ریشه‌ی اصلی دامنه (Root Directory) قرار می‌گیرد و وظیفه دارد به خزنده‌های موتورهای جستجو بگوید کدام مسیرها مجاز به خزش هستند و کدام مسیرها باید نادیده گرفته شوند.

به زبان ساده‌تر، robots.txt مثل تابلوی ورودی یک ساختمان است که روی آن نوشته شده:

«بازدید فقط از بخش‌های مجاز!»

هر زمان که ربات گوگل (Googlebot) وارد سایت می‌شود، پیش از هر کاری اول به آدرس زیر سر می‌زند:

https://example.com/robots.txt

اگر این فایل وجود داشته باشد، گوگل خط‌ به‌خط آن را می‌خواند تا بفهمد در کدام مسیرها اجازه حرکت دارد. اگر وجود نداشته باشد، فرض را بر این می‌گذارد که دسترسی به تمام صفحات آزاد است.

فایل robots.txt در واقع یک فایل عمومی است؛ یعنی هر کسی می‌تواند با وارد کردن آدرس آن در مرورگر، محتویاتش را ببیند. به همین دلیل، نباید در آن اطلاعات حساس (مثل مسیرهای امنیتی یا فایل‌های مدیریتی مهم) را فاش کرد.

محل دقیق قرارگیری این فایل بسیار مهم است. باید در دایرکتوری اصلی دامنه (Root) قرار داشته باشد، نه در پوشه‌های داخلی. برای مثال:
✅ آدرس درست:

https://www.seoant.ir/robots.txt

❌ آدرس اشتباه:

https://www.seoant.ir/blog/robots.txt

در واقع اگر فایل robots.txt در جای اشتباهی قرار گیرد، گوگل هرگز آن را نخواهد خواند و تنظیمات شما بی‌اثر می‌شود.

از نظر ساختار، robots.txt هیچ تگ HTML یا کدنویسی پیچیده ندارد؛ تنها مجموعه‌ای از دستورهای متنی ساده است که با چند خط مشخص می‌کند چه کسی به کجا دسترسی دارد. اما همین چند خط می‌تواند تفاوت بین ایندکس سالم و ایندکس ناقص کل سایت باشد.

در بخش بعدی، یاد می‌گیریم این دستورات دقیقاً چگونه نوشته می‌شوند و هر کدام چه نقشی دارند تا بتوانی robots.txt سایتت را مثل یک مدیر منظم طراحی کنی.

ساختار کلی فایل robots.txt و نحوه خواندن آن توسط خزنده‌ها

فایل robots.txt بر اساس مجموعه‌ای از دستورهای ساده ساخته می‌شود که هرکدام برای «کنترل دسترسی ربات‌ها» به بخش‌های مختلف سایت استفاده می‌شوند.
در ظاهر ممکن است فقط چند خط متن باشد، اما هر خط معنای دقیقی برای موتورهای جستجو دارد. گوگل و سایر خزنده‌ها هنگام ورود به سایت، این فایل را از بالا به پایین می‌خوانند و قوانین را به ترتیب اجرا می‌کنند.

ساختار کلی فایل معمولاً شامل سه بخش اصلی است:

  1. User-agent – مشخص می‌کند دستور برای کدام خزنده است.

  2. Disallow – مسیرهایی را که نباید خزیده شوند، تعیین می‌کند.

  3. Allow – مسیرهایی را که مجاز به خزش هستند، مشخص می‌کند (ویژه گوگل).

یک نمونه ساده از فایل robots.txt به این صورت است:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://www.seoant.ir/sitemap.xml

بیایید خط‌ به‌ خط بررسی کنیم:

  • **User-agent: ***
    علامت * یعنی این قانون برای همه‌ی خزنده‌ها (Googlebot، Bingbot، Yandex و…) اعمال می‌شود.
    اگر بخواهی فقط برای خزنده‌ی خاصی قانون بنویسی، نام آن را جایگزین می‌کنی، مثلاً:

    User-agent: Googlebot
  • Disallow: مسیرهایی که نباید بررسی شوند.
    در مثال بالا، /wp-admin/ یعنی تمام آدرس‌هایی که در مسیر مدیریت وردپرس قرار دارند، برای خزش مسدود می‌شوند.

  • Allow: مسیرهایی که علی‌رغم قرار گرفتن در بخش مسدود، باید در دسترس باشند.
    در مثال، فایل admin-ajax.php برای عملکرد درست سایت لازم است، بنابراین استثنا شده است.

  • Sitemap: در انتهای فایل قرار می‌گیرد تا گوگل به‌سرعت بتواند نقشه‌ی سایت را پیدا کند.

خزنده‌ها هنگام خواندن فایل robots.txt از یک منطق مشخص پیروی می‌کنند:

  1. فایل را از بالا به پایین می‌خوانند.

  2. قوانین خاص‌تر نسبت به قوانین عمومی اولویت دارند.

  3. اگر تعارضی میان Allow و Disallow وجود داشته باشد، در گوگل، معمولاً دستور Allow برنده است.

به‌عنوان مثال، اگر بنویسی:

Disallow: /blog/
Allow: /blog/seo-guide/

گوگل پوشه‌ی /blog/ را نادیده می‌گیرد اما صفحه‌ی /blog/seo-guide/ را می‌خزد.

در نهایت باید دقت کرد که فایل robots.txt دستور حذف صفحه از نتایج گوگل نیست.
این فایل فقط به ربات‌ها می‌گوید به کجا سر نزنند، نه اینکه صفحه را از ایندکس حذف کنند. برای حذف واقعی، باید از تگ noindex یا ابزار Removal در سرچ کنسول استفاده کرد.

بنابراین، robots.txt یک نقشه‌ی کنترلی است که اگر با دقت طراحی شود، باعث نظم در خزش و صرفه‌جویی در بودجه‌ی Crawl می‌شود؛ اما اگر اشتباه نوشته شود، می‌تواند باعث ناپدید شدن ناگهانی صفحات مهم سایت از نتایج گوگل شود.

آشنایی با دستورات پایه در robots.txt (User-agent، Allow، Disallow)

فایل robots.txt فقط با چند دستور ساده کار می‌کند، اما همین چند دستور می‌تواند مسیر خزش سایت را کاملاً تغییر دهد. گوگل و سایر خزنده‌ها هیچ تفسیر ذهنی از فایل ندارند؛ هر خط را دقیقاً همان‌طور که نوشته‌ای اجرا می‌کنند. پس لازم است معنی هر دستور را کاملاً بفهمی.

بیایید دستورهای اصلی را یکی‌یکی بررسی کنیم:

1. دستور User-agent

این خط تعیین می‌کند قانون برای کدام ربات نوشته شده است.
هر موتور جستجو نام خاص خود را دارد:

  • Googlebot → خزنده اصلی گوگل برای صفحات وب

  • Googlebot-Image → برای تصاویر

  • Bingbot → برای موتور بینگ

  • YandexBot → برای موتور یاندکس

وقتی از ستاره * استفاده می‌کنی یعنی «این قانون برای همه ربات‌هاست».
مثلاً:

User-agent: *

یعنی قوانین پایین‌تر برای تمام خزنده‌ها اعمال می‌شود.

اگر بخواهی فقط برای گوگل قانون بنویسی:

User-agent: Googlebot

در این صورت سایر ربات‌ها از این قانون پیروی نمی‌کنند، مگر اینکه قانون مخصوص خودشان داشته باشند.

2. دستور Disallow

با این دستور به ربات‌ها می‌گویی کدام مسیرها را نباید بخزند.
بعد از کلمه Disallow باید مسیر (Path) موردنظر را بنویسی.
چند مثال کاربردی:

Disallow: /wp-admin/
Disallow: /cart/
Disallow: /search/
Disallow: /private/

یعنی گوگل اجازه ندارد وارد این مسیرها شود.
اگر می‌خواهی به ربات‌ها اجازه‌ی کامل بدهی، باید خط Disallow خالی باشد:

Disallow:

نکته‌ی مهم: اگر اشتباهاً بنویسی

Disallow: /

به معنی بستن کل سایت است!
یعنی گوگل هیچ صفحه‌ای را نمی‌خزد — خطایی که می‌تواند رتبه‌ی کل دامنه را از بین ببرد.

3. دستور Allow

این دستور در گوگل و موتورهای مدرن استفاده می‌شود تا استثناها را مشخص کند.
فرض کن کل پوشه /wp-admin/ را بسته‌ای، اما یک فایل در آن برای عملکرد سایت لازم است (مثلاً AJAX). در این حالت می‌گویی:

Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php

یعنی پوشه بسته است، اما این مسیر خاص باز بماند.

نکات حرفه‌ای برای نوشتن دستورها

 بین حروف کوچک و بزرگ تفاوت وجود دارد (Case-Sensitive). مسیر /Blog/ با /blog/ متفاوت است.
 قبل از هر قانون جدید باید User-agent مشخص شود.
 دستورها به ترتیب خوانده می‌شوند؛ قوانین پایین‌تر فقط برای همان User-agent فعال هستند.
 اگر فایل robots.txt خیلی طولانی شود، بهتر است قوانین را گروه‌بندی کنی (برای هر خزنده جداگانه).

در نهایت، این سه دستور هسته‌ی اصلی فایل robots.txt را تشکیل می‌دهند.
درست نوشتن آن‌ها یعنی کنترل دقیق خزش گوگل، جلوگیری از ایندکس مسیرهای بی‌ارزش و صرفه‌جویی در بودجه‌ی Crawl.
اما اگر اشتباه استفاده شوند، نتیجه دقیقاً برعکس خواهد بود: صفحات حیاتی از نتایج حذف می‌شوند و سایتت برای مدتی از دید گوگل پنهان می‌ماند.

مثال‌هایی از فایل robots.txt ساده برای سایت‌های وردپرسی

بیشتر سایت‌های وردپرسی ساختار مشابهی دارند؛ پوشه‌هایی مثل /wp-admin/، /wp-content/ و /wp-includes/ که هسته و فایل‌های اصلی سیستم مدیریت محتوا را تشکیل می‌دهند.
از آن‌جا که گوگل نیازی به خزش در فایل‌های سیستمی ندارد، می‌توانیم با چند خط ساده در robots.txt مسیر خزش را کنترل کنیم تا هم سرعت Crawl افزایش یابد و هم فشار روی سرور کم شود.

در ادامه چند نمونه متداول و کاربردی از فایل robots.txt برای سایت‌های وردپرسی آورده شده است 👇

 مثال ۱: فایل robots.txt پیشنهادی برای بیشتر سایت‌های وردپرسی

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://www.example.com/sitemap.xml

توضیح:

  • User-agent: * یعنی این قوانین برای تمام ربات‌ها (از جمله Googlebot و Bingbot) اعمال می‌شود.

  • Disallow: /wp-admin/ باعث می‌شود بخش مدیریت وردپرس ایندکس نشود.

  • Allow: /wp-admin/admin-ajax.php اجازه می‌دهد فایل Ajax برای عملکرد سایت باز بماند.

  • Sitemap: مسیر نقشه سایت را معرفی می‌کند تا گوگل بتواند همه‌ی URLهای مجاز را شناسایی کند.

 مثال ۲: سایت‌های وردپرسی با فروشگاه اینترنتی (افزونه ووکامرس)

User-agent: *
Disallow: /wp-admin/
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://www.example.com/sitemap.xml

توضیح:
در این نسخه، مسیرهای مربوط به سبد خرید، پرداخت و حساب کاربری هم بلاک شده‌اند، چون این صفحات شخصی یا موقت هستند و ایندکس شدنشان هیچ ارزشی ندارد.

 مثال ۳: فایل robots.txt مخصوص سایت‌هایی که هنوز در حال توسعه هستند

User-agent: *
Disallow: /

توضیح:
این فایل به تمام ربات‌ها می‌گوید که هیچ صفحه‌ای از سایت را فعلاً نخزند یا ایندکس نکنند. معمولاً در محیط‌های تست (Staging) از این حالت استفاده می‌شود تا محتوای ناقص یا تکراری در نتایج گوگل دیده نشود.

 مثال ۴: کنترل دقیق‌تر برای عملکردهای خاص

User-agent: *
Disallow: /wp-login.php
Disallow: /?s=
Disallow: /xmlrpc.php
Allow: /wp-content/uploads/
Sitemap: https://www.example.com/sitemap_index.xml

توضیح:

  • مسیر /wp-login.php برای ورود کاربران است و نباید در گوگل نمایش داده شود.

  • /xmlrpc.php یکی از فایل‌هایی است که اغلب هدف حملات خودکار قرار می‌گیرد.

  • /wp-content/uploads/ را آزاد گذاشته‌ایم تا تصاویر و فایل‌های رسانه‌ای ایندکس شوند.

در واقع، robots.txt برای وردپرس مثل یک فیلتر هوشمند است: مسیرهای فنی و خصوصی را مسدود می‌کند، اما مسیر محتوایی را در اختیار خزنده‌ها می‌گذارد.
اما این تنها قدم اول است؛ در بخش بعدی یاد می‌گیریم چطور robots.txt را برای سایت‌های بزرگ‌تر یا خاص‌تر (مثل فروشگاهی یا چندزبانه) بهینه کنیم تا بهترین تعادل بین دسترسی و امنیت برقرار شود.

قوانین پیشرفته در robots.txt برای کنترل خزنده‌های مختلف

وقتی سایتت بزرگ‌تر می‌شود، همه‌چیز به جزئیات وابسته است. دیگر فقط مهم نیست چه صفحاتی باز باشند یا بسته؛ بلکه باید تصمیم بگیری کدام خزنده از کدام مسیر با چه محدودیتی عبور کند.
اینجاست که قدرت واقعی فایل robots.txt خودش را نشان می‌دهد.

 تفکیک دسترسی برای خزنده‌های مختلف

تمام خزنده‌ها یکسان رفتار نمی‌کنند. مثلاً:

  • Googlebot برای ایندکس محتوای جستجو استفاده می‌شود.

  • Googlebot-Image مخصوص ایندکس تصاویر است.

  • Bingbot خزنده موتور جستجوی بینگ است.

  • AdsBot-Google صفحات فرود تبلیغات را بررسی می‌کند.

  • AhrefsBot یا SemrushBot ابزارهای آنالیز لینک هستند.

می‌توانی برای هرکدام از این‌ها قوانین جداگانه تعریف کنی. برای مثال:

User-agent: Googlebot
Disallow: /temp/
Allow: /
User-agent: Bingbot
Disallow: /private/
Allow: /
User-agent: AhrefsBot
Disallow: /

 در این نمونه:

  • گوگل فقط پوشه موقت /temp/ را نمی‌خزد.

  • بینگ از مسیرهای خصوصی دوری می‌کند.

  • AhrefsBot به‌کلی مسدود شده تا منابع سرور را مصرف نکند.

 محدود کردن نرخ خزش (Crawl-delay)

برخی موتورهای جستجو مثل Bing یا Yandex از دستور Crawl-delay پشتیبانی می‌کنند. این دستور مشخص می‌کند هر چند ثانیه یک‌بار ربات مجاز به ارسال درخواست جدید باشد.

User-agent: Bingbot
Crawl-delay: 10

یعنی بینگ فقط هر ۱۰ ثانیه یک درخواست جدید بفرستد.
توجه داشته باش که Googlebot از Crawl-delay پشتیبانی نمی‌کند. برای گوگل باید نرخ خزش را از داخل Google Search Console > Settings > Crawl rate تنظیم کنی.

 استفاده از Wildcardها (* و $) برای کنترل دقیق مسیرها

در robots.txt می‌توانی از دو کاراکتر خاص برای تطبیق الگوها استفاده کنی:

  • * یعنی «هر رشته‌ای از کاراکترها»

  • $ یعنی «پایان URL»

مثلاً:

User-agent: *
Disallow: /*?replytocom
Disallow: /*.pdf$
Allow: /wp-content/uploads/*.pdf$

 توضیح:

  • دستور اول مانع ایندکس شدن آدرس‌هایی می‌شود که پارامتر replytocom دارند (نظرات تکراری در وردپرس).

  • دستور دوم همه فایل‌های PDF را بلاک می‌کند.

  • دستور سوم استثنا قائل شده تا فقط PDFهای داخل پوشه‌ی آپلود مجاز باشند.

 کنترل خزش در زیردامنه‌ها و مسیرهای خاص

هر زیردامنه (Subdomain) باید فایل robots.txt مخصوص خودش داشته باشد.
مثلاً:

blog.example.com/robots.txt
shop.example.com/robots.txt

اگر بخواهی کل زیردامنه فروشگاه را از ایندکس حذف کنی:

User-agent: *
Disallow: /

اما زیردامنه اصلی (example.com) همچنان ایندکس می‌شود. این تفکیک در پروژه‌های بزرگ یا سایت‌های چندبخشی بسیار حیاتی است.

 ترکیب Allow و Disallow برای دسترسی جزئی

گاهی لازم است پوشه‌ای را ببندی اما یک فایل خاص در آن باز بماند. برای مثال:

User-agent: *
Disallow: /private/
Allow: /private/download.pdf

در این حالت، همه‌ی مسیر /private/ بسته است به جز فایل download.pdf.

 نکته مهم درباره ترتیب دستورات

خزنده‌ها همیشه از بالا به پایین می‌خوانند و به اولین دستور منطبق عمل می‌کنند.
پس اگر Allow پایین‌تر از Disallow بیاید، ترتیب می‌تواند نتیجه را تغییر دهد.

نحوه مسدودسازی مسیرهای غیرضروری مثل /wp-admin یا /search

همه‌ی صفحات سایت ارزش ایندکس شدن ندارند. بعضی از مسیرها فقط برای مدیریت داخلی، جستجوی کاربران یا عملکرد فنی سایت هستند و ایندکس شدنشان نه‌تنها فایده‌ای ندارد بلکه ممکن است باعث افت کیفیت نتایج و مصرف بیهوده بودجه خزش (Crawl Budget) شود.

برای کنترل این موضوع، باید در فایل robots.txt مسیرهای غیرضروری را Disallow کنیم تا خزنده‌ها در آن بخش‌ها وارد نشوند.

 چرا باید مسیرهای غیرضروری را مسدود کنیم؟

  1. کاهش فشار روی سرور: وقتی ربات‌ها در مسیرهای غیرمفید خزش نکنند، منابع سرور صرف صفحات مهم‌تر می‌شود.

  2. بهینه‌سازی بودجه خزش: گوگل در هر بازه زمانی تعداد محدودی URL از سایت می‌خزد؛ پس باید اولویت با صفحات اصلی و محتوایی باشد.

  3. جلوگیری از ایندکس صفحات تکراری یا ضعیف: صفحات جستجو، فیلترها، یا مدیریت ممکن است URLهای زیادی تولید کنند که محتوای مشابه دارند.

  4. حفظ امنیت و حریم داده‌ها: مسیرهایی مثل /wp-admin/ یا /login/ نباید در نتایج جستجو نمایش داده شوند.

 مثال‌هایی از مسیرهای رایج که باید مسدود شوند

 مسیر مدیریت وردپرس

Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php

 این تنظیم باعث می‌شود پوشه‌ی مدیریت وردپرس خزیده نشود، اما فایل admin-ajax.php که برای عملکرد بعضی افزونه‌ها لازم است، باز بماند.

 مسیر ورود کاربران

Disallow: /wp-login.php
Disallow: /login/

 این مسیرها معمولاً فقط برای ورود مدیران یا کاربران ثبت‌نام‌شده هستند. گوگل نیازی به دیدن آن‌ها ندارد و ایندکس شدنشان فقط خطرناک است.

 مسیر جستجوهای داخلی سایت

Disallow: /?s=
Disallow: /search/

 این خطوط باعث می‌شوند صفحات نتایج جستجوی داخلی سایت (مثل /?s=کلمه) از ایندکس خارج شوند.
چون معمولاً این صفحات محتوای تکراری دارند و هیچ ارزش مستقلی برای سئو ندارند.

 مسیرهای پویا و فیلترهای محصول (در فروشگاه‌ها)

Disallow: /*?filter=
Disallow: /*?sort=
Disallow: /*?price=

 این نمونه مخصوص فروشگاه‌های ووکامرس یا سایت‌های فیلترپذیر است.
هر فیلتر یک URL جدید ایجاد می‌کند و ممکن است هزاران آدرس بی‌ارزش وارد ایندکس شوند.

 مسیرهای حساس و فنی

Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/

 این مسیرها معمولاً داده‌های خصوصی یا فرآیندهای خرید را شامل می‌شوند و بهتر است از دید ربات‌ها مخفی بمانند.

 نکته: فقط مسیرهایی را مسدود کن که واقعاً نباید ایندکس شوند

گاهی مدیران سایت به اشتباه /wp-content/ یا /uploads/ را هم بلاک می‌کنند، که باعث می‌شود تصاویر و فایل‌های رسانه‌ای از نتایج گوگل حذف شوند.
بهترین کار این است که قبل از اضافه کردن هر مسیر، با ابزارهایی مثل Search Console > URL Inspection یا Ahrefs Site Audit بررسی کنی آن مسیر چه نوع محتوایی دارد و آیا ایندکس شدنش مفید است یا نه.

 نمونه نهایی برای سایت وردپرسی

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-login.php
Disallow: /?s=
Disallow: /search/
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://www.example.com/sitemap.xml

این نسخه برای ۹۰٪ سایت‌های وردپرسی استاندارد کاملاً بهینه است؛
ساده، امن و سازگار با نیاز خزنده‌های اصلی گوگل و بینگ.

اشتباهات رایج در فایل robots.txt که ممکن است کل سایت را از نتایج حذف کند

فایل robots.txt یکی از ساده‌ترین فایل‌های متنی دنیاست، اما در عین حال خطرناک‌ترین هم می‌تونه باشه.
چون فقط با یک خط اشتباه ممکنه به گوگل بگی:

«هیچ صفحه‌ای از من رو نخون!»

و نتیجه؟
کل سایتت از نتایج جستجو حذف می‌شه و شاید روزها طول بکشه تا دوباره ایندکس بشی.

در این بخش می‌خوایم تمام خطاهای رایج و مرگبار در robots.txt رو بررسی کنیم تا هیچ‌وقت این اشتباهات رو مرتکب نشی.

 ۱. استفاده اشتباه از دستور کلی «Disallow: /»

این اشتباه کلاسیک‌ترین و در عین حال مخرب‌ترین خطاست:

User-agent: *
Disallow: /

یعنی:

تمام ربات‌ها حق خزش هیچ صفحه‌ای از سایت را ندارند.

اگر این فایل در دامنه اصلی قرار بگیره، گوگل و همه موتورهای جستجو کل سایت رو از ایندکس خارج می‌کنن.
گاهی این فایل برای محیط تست (Staging) استفاده می‌شه و مدیر سایت فراموش می‌کنه هنگام انتقال به نسخه نهایی آن را حذف کند — یکی از رایج‌ترین دلایل افت ناگهانی ترافیک در سایت‌های تازه‌لانچ‌شده.

 ۲. اشتباه در مسیرهای نسبی (Relative Paths)

robots.txt فقط مسیرهای نسبی (relative) رو می‌پذیره، نه آدرس کامل.
یعنی اشتباه زیر کاملاً بی‌اثر است:

Disallow: https://example.com/wp-admin/

درستش باید این‌طور نوشته شود:

Disallow: /wp-admin/

اگر مسیرها اشتباه نوشته شوند، خزنده‌ها نمی‌فهمند باید چه چیزی را بلاک کنند و نتیجه معمولاً یا هیچ تغییری در رفتار گوگل نیست یا بلاک ناخواسته کل دامنه.

 ۳. فراموش کردن Allow برای مسیرهای ضروری

گاهی مدیر سایت برای امنیت بیشتر مسیر /wp-admin/ را بلاک می‌کند، اما فراموش می‌کند فایل‌های ضروری مانند admin-ajax.php را مجاز کند.
در نتیجه، بعضی افزونه‌ها و عملکردهای پویا از کار می‌افتند یا گوگل نمی‌تواند درست داده‌های ساختاریافته (structured data) را بخواند.

درستش این است:

Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php

 ۴. استفاده اشتباه از Wildcardها (* و $)

Wildcardها ابزار قدرتمندی هستند، اما اشتباه در استفاده از آن‌ها می‌تواند نتایج غیرمنتظره‌ای ایجاد کند.
مثلاً:

Disallow: /*.php$

این خط باعث می‌شود تمام صفحات PHP بلاک شوند — حتی صفحه اصلی یا دسته‌بندی‌ها اگر با .php پایان یابند.
در حالی‌که شاید فقط خواسته‌ای مسیرهای خاصی مثل /old/ را ببندی.

بهترین روش این است که همیشه Wildcardها را با دقت و تست بنویسی، مثلاً:

Disallow: /old/*.php$

 ۵. بستن مسیرهای اشتباه به‌دلیل کپی از نمونه‌های اینترنتی

خیلی‌ها فایل robots.txt را از سایت‌های دیگر کپی می‌کنند، بدون اینکه بدانند مسیرهای آن فایل مخصوص همان ساختار است.
مثلاً سایت آن‌ها پوشه‌ای به نام /cgi-bin/ ندارد، ولی در robots.txt نوشته‌اند:

Disallow: /cgi-bin/

در ظاهر مشکلی نیست، ولی وقتی این عادت ادامه پیدا کند ممکن است مسیرهای واقعی خودشان را هم اشتباهاً ببندند.
همیشه فایل robots.txt باید اختصاصی برای ساختار سایت خودت نوشته شود.

 ۶. بستن مسیرهای CSS و JS (به‌اشتباه برای سرعت یا امنیت)

برخی مدیران برای «سبک‌تر کردن خزش» این کار را می‌کنند:

Disallow: /wp-includes/
Disallow: /wp-content/

اما این کار فاجعه‌بار است!
زیرا گوگل برای ارزیابی تجربه کاربری (Core Web Vitals) باید بتواند CSS و JavaScript را ببیند.
اگر آن‌ها را مسدود کنی، گوگل نمی‌تواند ظاهر واقعی صفحه را رندر کند و در نتیجه امتیاز Page Experience پایین می‌آید.

 ۷. فراموش کردن معرفی Sitemap در انتهای فایل

گاهی مدیران فایل robots.txt را می‌سازند اما مسیر نقشه سایت را اضافه نمی‌کنند:

Sitemap: https://www.example.com/sitemap.xml

وجود این خط ساده باعث می‌شود گوگل سریع‌تر URLهای جدید را شناسایی کند.
نبود آن، خزش و ایندکس را کند می‌کند — مخصوصاً در سایت‌های بزرگ یا تازه راه‌اندازی‌شده.

 ۸. استفاده از فرمت یا انکدینگ اشتباه (UTF-8 with BOM)

اگر فایل robots.txt را با نرم‌افزارهای ویرایش متنی ویندوز بسازی، ممکن است کاراکترهای مخفی BOM در ابتدای فایل ذخیره شوند.
در این حالت، خزنده‌ها ممکن است خط اول را اشتباه بخوانند و کل فایل نادیده گرفته شود.
بنابراین همیشه مطمئن شو فایل را با UTF-8 بدون BOM (Plain UTF-8) ذخیره می‌کنی.

روش افزودن لینک Sitemap به فایل robots.txt

فایل robots.txt فقط برای محدود کردن خزنده‌ها نیست؛ بلکه می‌تواند مثل یک «تابلوی راهنما» مسیر دقیق نقشه سایت (Sitemap) را هم به موتورهای جستجو معرفی کند.
این کار ساده اما بسیار مؤثر است — چون باعث می‌شود گوگل و بینگ به‌صورت مستقیم و فوری به آدرس نقشه سایت دسترسی پیدا کنند، بدون اینکه منتظر لینک‌های داخلی یا ثبت دستی در Search Console باشند.

 نقش Sitemap در ارتباط با robots.txt

نقشه سایت (sitemap.xml) در واقع فهرستی از تمام صفحات مهم سایت است.
وقتی در فایل robots.txt لینک آن را درج می‌کنی، خزنده‌ها می‌دانند دقیقاً از کجا باید شروع کنند تا سریع‌تر و کامل‌تر کل ساختار سایت را بخزند.

گوگل خودش در مستندات رسمی گفته است:

«افزودن آدرس Sitemap در فایل robots.txt یکی از بهترین روش‌ها برای اطلاع‌رسانی خودکار به موتورهای جستجو درباره ساختار سایت است.» ساختار استاندارد افزودن Sitemap

در فایل robots.txt، کافی است دستور زیر را در انتهای فایل اضافه کنی:

Sitemap: https://www.example.com/sitemap.xml

نکات مهم:

  1. باید آدرس کامل (Full URL) وارد شود، نه مسیر نسبی.

✅ درست: Sitemap: https://www.seoant.ir/sitemap.xml

❌ غلط: Sitemap: /sitemap.xml

فرقی ندارد که از http یا https استفاده کنی، اما حتماً باید با پروتکل فعال سایت هماهنگ باشد.

  1. اگر سایتت نسخه‌های مختلف دارد (www و non-www)، باید لینک sitemap با همان دامنه فعال مطابقت داشته باشد.

 مثال‌های عملی برای انواع سایت‌ها

 نمونه ساده برای سایت‌های وردپرسی:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://www.example.com/sitemap.x

 اگر از افزونه Rank Math یا Yoast استفاده می‌کنی:

این افزونه‌ها معمولاً نقشه اصلی را به‌صورت ایندکس می‌سازند:

Sitemap: https://www.example.com/sitemap_index.xml

 برای سایت‌های چندزبانه یا چندبخشی:

می‌توانی چند نقشه مختلف معرفی کنی:

Sitemap: https://www.example.com/sitemap-pages.xml
Sitemap: https://www.example.com/sitemap-posts.xml
Sitemap: https://www.example.com/sitemap-products.xml

موتورهای جستجو همه این لینک‌ها را به‌صورت جداگانه می‌خوانند.

 جایگاه مناسب خط Sitemap در فایل

اگرچه robots.txt ترتیب خاصی را برای خواندن خطوط ندارد، بهترین و توصیه‌شده‌ترین روش این است که لینک Sitemap در انتهای فایل بیاید.
چون باعث می‌شود ربات‌ها ابتدا قوانین دسترسی را بخوانند و سپس مسیر نقشه سایت را دنبال کنند.

 مثال نهایی:

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-login.php
Allow: /wp-admin/admin-ajax.php
Sitemap: https://www.seoant.ir/sitemap_index.xml

 نکته حرفه‌ای برای سئو تکنیکال

اگر سایت چند زیردامنه دارد (مثلاً blog.example.com و shop.example.com)،
هر زیردامنه باید فایل robots.txt مخصوص خود داشته باشد،
و در هرکدام لینک Sitemap مربوط به همان زیردامنه درج شود.

مثلاً:

# robots.txt برای blog.example.com
Sitemap: https://blog.example.com/sitemap.xml
# robots.txt برای shop.example.com
Sitemap: https://shop.example.com/sitemap.xml

 اعتبارسنجی لینک Sitemap

بعد از ذخیره فایل، می‌توانی از یکی از این روش‌ها مطمئن شوی گوگل آن را شناسایی کرده:

  1. در Google Search Console بخش Sitemaps، لینک را وارد و تست کن.

  2. آدرس فایل robots.txt را در مرورگر باز کن (مثلاً https://www.seoant.ir/robots.txt) و مطمئن شو لینک نقشه درست نمایش داده می‌شود.

  3. از ابزارهایی مثل SEO Spider یا Ahrefs Site Audit استفاده کن تا تأیید شود Sitemap شناسایی شده است.

بررسی robots.txt در ابزار تست سرچ کنسول گوگل

بعد از ساخت یا ویرایش فایل robots.txt، باید مطمئن شویم که قوانین نوشته‌شده واقعاً همان‌طور که انتظار داریم عمل می‌کنند. کوچک‌ترین اشتباه در یک خط از این فایل می‌تواند باعث مسدود شدن کل سایت از نتایج جستجو یا هدر رفتن بودجه خزش شود. برای همین گوگل ابزاری به نام Robots.txt Tester در سرچ کنسول ارائه کرده تا بتوانیم فایل را به‌صورت زنده تست کنیم.

برای استفاده از این ابزار مراحل زیر را انجام بده:

  1. وارد سرچ کنسول دامنه‌ات شو.

  2. از منوی کناری مسیر Legacy tools and reports → Robots.txt Tester را انتخاب کن.

  3. محتوای فعلی فایل robots.txt سایتت را در کادر ابزار می‌بینی. در صورت نیاز می‌تونی آن را ویرایش کنی (فقط برای تست، نه اعمال واقعی روی سرور).

  4. در قسمت پایین ابزار، گزینه‌ای هست به نام “Test”. در این بخش می‌توانی آدرس یک صفحه خاص از سایت را وارد کنی و ببینی آیا با قوانین فعلی اجازه خزش دارد یا خیر.

    • اگر سبز شد یعنی “Allowed” → صفحه برای خزنده مجاز است.

    • اگر قرمز شد یعنی “Blocked” → صفحه برای ربات موردنظر مسدود شده است.

نکته مهم این است که ابزار تست فقط برای دیتای فعلی روی سرور کار می‌کند. یعنی اگر فایل robots.txt را روی هاست تغییر داده‌ای، باید چند دقیقه صبر کنی تا گوگل نسخه جدید را بخواند.

در انتهای تست، اگر گوگل خطایی در سینتکس (Syntax) پیدا کند، آن را با رنگ قرمز و توضیح دقیق نشان می‌دهد. خطاهایی مثل تایپ اشتباه در “User-agent” یا نبودن فاصله بعد از “Disallow” بسیار رایج‌اند.

در سئو مورچه‌ای همیشه توصیه می‌کنیم قبل از انتشار نهایی فایل robots.txt، حتماً نسخه‌ی آزمایشی را در ابزار تست سرچ کنسول بررسی کنید. این کار کمتر از دو دقیقه زمان می‌برد، اما از اشتباهاتی جلوگیری می‌کند که ممکن است هفته‌ها یا ماه‌ها به ضرر سایت تمام شود.

روش صحیح مدیریت فایل robots.txt در سایت‌های بزرگ یا چندزبانه

در سایت‌های کوچک، robots.txt معمولاً فقط چند خط ساده دارد. اما در سایت‌های بزرگ یا چندزبانه، کنترل خزش به مراتب پیچیده‌تر می‌شود. هر خط در این فایل می‌تواند بر صدها هزار URL تأثیر بگذارد. اگر بهینه‌سازی نشود، گوگل ممکن است منابعش را روی صفحات تکراری، پارامترها یا نسخه‌های زبانی اشتباه تلف کند.

۱. ساختاردهی فایل برای چند دامنه یا زیردامنه

در سایت‌هایی که از زیردامنه‌ها برای بخش‌های مختلف استفاده می‌کنند (مثل en.example.com، fa.example.com یا shop.example.com)، هر زیردامنه باید فایل robots.txt مخصوص خود داشته باشد.
به‌عنوان مثال:

  • https://en.example.com/robots.txt مخصوص نسخه انگلیسی

  • https://fa.example.com/robots.txt مخصوص نسخه فارسی

  • https://shop.example.com/robots.txt مخصوص فروشگاه

این کار باعث می‌شود هر بخش طبق محتوای خودش کنترل شود و بودجه خزش بین زبان‌ها و بخش‌ها بهینه توزیع شود.

۲. تعیین اولویت خزش در سایت‌های چندزبانه

گوگل معمولاً همه زبان‌ها را همزمان نمی‌خزد. اگر بعضی نسخه‌های زبانی برایت اهمیت بیشتری دارند (مثلاً فارسی و انگلیسی اصلی‌تر از عربی هستند)، می‌توانی با استفاده از Allow/Disallow هدفمند، خزنده‌ها را ابتدا به بخش‌های مهم‌تر هدایت کنی.
همچنین پیشنهاد می‌شود sitemap‌های جداگانه برای هر زبان بسازی و آدرس آن‌ها را در robots.txt همان دامنه درج کنی. مثل:

Sitemap: https://fa.example.com/sitemap.xml
Sitemap: https://en.example.com/sitemap.xml

۳. کنترل خزش صفحات تکراری یا فیلترشده

در فروشگاه‌ها یا سایت‌های دارای فیلترهای زیاد (مانند قیمت، رنگ، برند)، لازم است پارامترهای URL در robots.txt مسدود شوند تا گوگل به دام میلیون‌ها ترکیب مشابه نیفتد. مثلاً:

Disallow: /*?color=
Disallow: /*?price=

این کار بودجه خزش را از صفحات بی‌ارزش به صفحات مهم و ایندکس‌پذیر هدایت می‌کند.

۴. هماهنگی بین robots.txt و hreflang

در سایت‌های چندزبانه که از تگ‌های hreflang استفاده می‌کنند، بسیار مهم است که هیچ نسخه زبانی در robots.txt مسدود نشده باشد. در غیر این صورت، گوگل نمی‌تواند ارتباط بین نسخه‌ها را تشخیص دهد و ممکن است ایندکس ناقص یا اشتباه انجام شود.

۵. مدیریت متمرکز در سرور یا CDN

برای سایت‌های بزرگ با سرورهای متعدد، بهتر است فایل robots.txt به‌صورت مرکزی از طریق CDN یا سیستم مدیریت تنظیمات (Config Management) کنترل شود. به این شکل، تغییرات سریع‌تر و بدون نیاز به ویرایش دستی روی هر سرور اعمال می‌شود.

۶. بررسی مداوم و ثبت تغییرات

در پروژه‌های وسیع، بهتر است تغییرات فایل robots.txt نسخه‌بندی شود. یعنی هر بار که ویرایش می‌کنی، یک نسخه جدید با تاریخ ذخیره شود تا در صورت بروز خطا بتوان به نسخه قبلی برگشت. این کار برای تیم‌های بزرگ سئو و DevOps حیاتی است.

در «سئو مورچه‌ای» ما همیشه تأکید داریم که robots.txt در سایت‌های بزرگ نباید فقط یک فایل باشد، بلکه یک استراتژی هوشمند خزش است.
هر زبان، هر بخش و هر مسیر باید دقیقاً مثل یک نقشه مورچه‌ای طراحی شود تا گوگل بدون سردرگمی، بهترین مسیر را برای ایندکس پیدا کند

نقش robots.txt در بهینه‌سازی Crawl Budget

بودجه خزش یا Crawl Budget به زبان ساده یعنی مقدار زمانی و منابعی که گوگل برای بررسی سایت شما در هر بازه زمانی اختصاص می‌دهد. هرچه سایت بزرگ‌تر باشد و صفحات بیشتری داشته باشد، مدیریت این بودجه اهمیت بیشتری پیدا می‌کند.

فایل robots.txt یکی از کلیدی‌ترین ابزارها برای هدایت هوشمند این بودجه است. اگر درست تنظیم شود، خزنده‌های گوگل فقط صفحات مهم را بررسی می‌کنند و وقتشان را روی مسیرهای بی‌ارزش یا تکراری تلف نمی‌کنند.

حذف مسیرهای غیرضروری از دسترس خزنده‌ها

هر سایت مجموعه‌ای از مسیرها دارد که وجودشان برای کاربر لازم است اما ایندکس شدنشان هیچ ارزشی ندارد؛ مثل پوشه‌های مدیریتی (/wp-admin/)، صفحات جستجوی داخلی (/search/)، یا پارامترهای فیلتر (?sort=, ?price=).
مسدود کردن این مسیرها در robots.txt باعث می‌شود گوگل زمان خود را به‌جای بررسی هزاران آدرس تکراری، صرف صفحات اصلی و باارزش کند.

تمرکز بودجه روی صفحات درآمدزا یا استراتژیک

در سئو مورچه‌ای همیشه می‌گوییم: بودجه خزش مثل غذای مورچه‌هاست؛ اگر درست تقسیم نشود، بخشی از کلونی گرسنه می‌ماند!
با محدود کردن مسیرهای بی‌ارزش، بودجه آزادشده به صفحات کلیدی هدایت می‌شود — مثل صفحات خدمات، مقالات آموزشی یا دسته‌بندی‌های مهم فروشگاهی. نتیجه؟ ایندکس سریع‌تر و رتبه‌گیری پایدارتر.

جلوگیری از خزش تکراری در صفحات مشابه

در سایت‌های فروشگاهی یا محتوایی بزرگ، URLهای زیادی ممکن است به محتوای مشابه اشاره کنند (مثل پارامترهای فیلتر یا مسیرهای آرشیو). گوگل اگر مرتب این صفحات را بخزد، بودجه‌اش هدر می‌رود.
در این حالت، استفاده از الگوهای Disallow برای مسیرهای تکراری می‌تواند خزش را هدفمند کند و از اتلاف بودجه جلوگیری کند.

کمک به بهبود سرعت ایندکس صفحات جدید

وقتی خزنده گوگل کمتر وقت خود را روی مسیرهای مسدودشده صرف کند، در نتیجه می‌تواند صفحات تازه منتشرشده را زودتر ببیند و ایندکس کند. این مسئله به‌ویژه برای سایت‌هایی که به‌طور مداوم مقاله یا محصول جدید منتشر می‌کنند، اهمیت زیادی دارد.

هماهنگی با نقشه سایت برای خزش بهینه

در انتهای فایل robots.txt می‌توان آدرس sitemap.xml را درج کرد. این کار به گوگل کمک می‌کند تا پس از عبور از محدودیت‌ها، مستقیماً به فهرست صفحات مهم هدایت شود. به این ترتیب، بودجه خزش نه‌تنها صرفه‌جویی می‌شود، بلکه در مسیر درست هم خرج می‌شود.

حفظ تعادل بین کنترل و دسترسی

یکی از اشتباهات رایج این است که مدیران سایت برای صرفه‌جویی در Crawl Budget، مسیرهای زیادی را مسدود می‌کنند. اما اگر بیش از حد سخت‌گیر باشی، گوگل ممکن است نتواند ساختار سایت را درک کند یا بعضی از صفحات حیاتی را اصلاً پیدا نکند.
راز موفقیت در تعادل است: فقط مسیرهایی را ببند که ارزش ایندکس ندارند، نه مسیرهایی که به درک کلی سایت کمک می‌کنند.

در فلسفه‌ی سئو مورچه‌ای 
robots.txt فقط یک فایل نیست؛ بلکه نقشه‌ی خزش هوشمند است که تعیین می‌کند گوگل چطور، کجا و با چه اولویتی در سایت حرکت کند.
وقتی این نقشه دقیق طراحی شود، هر کلیک از گوگل نتیجه‌ی یک مسیر بهینه‌شده خواهد بود.

تأثیر فایل robots.txt در جلوگیری از ایندکس صفحات تکراری یا بی‌اهمیت

یکی از بزرگ‌ترین چالش‌های فنی در سئو، کنترل ایندکس صفحاتی است که برای کاربر ارزشی ندارند یا محتوای مشابه دارند. گوگل اگر این صفحات را ایندکس کند، ممکن است ارزش کل دامنه کاهش یابد، صفحات مهم‌تر دیرتر رتبه بگیرند و حتی بودجه خزش (Crawl Budget) هدر برود.

اینجاست که فایل robots.txt به کمک می‌آید. این فایل نقش فیلتر اولیه را دارد تا خزنده‌های گوگل قبل از ورود به صفحات بی‌اهمیت، مسیرشان را ببندند.

جلوگیری از ایندکس صفحات تکراری (Duplicate URLs)

در بسیاری از سایت‌ها، یک محتوا ممکن است از چند مسیر مختلف قابل دسترسی باشد:

  • صفحات دسته‌بندی با پارامترهای مختلف (?page=2, ?sort=latest)

  • نسخه‌های تگ‌دار (/tag/keyword/)

  • آرشیوهای تاریخ‌دار (/2023/09/article-name/)

اگر گوگل همه این نسخه‌ها را بخزد، با چند URL مشابه روبه‌رو می‌شود که محتوای یکسان دارند. در نتیجه، سیگنال رتبه بین آن‌ها تقسیم می‌شود و هیچ‌کدام جایگاه خوبی نمی‌گیرند.
با استفاده از robots.txt می‌توانیم به‌راحتی جلوی خزش این مسیرها را بگیریم:

User-agent: *
Disallow: /*?page=
Disallow: /tag/
Disallow: /archive/

این کار به گوگل می‌گوید فقط نسخه‌ی اصلی محتوا را بررسی کند و بقیه را نادیده بگیرد.

جلوگیری از ایندکس صفحات بی‌ارزش برای کاربر

صفحات داخلی مثل /wp-admin/، /cart/، /checkout/ یا /search/ برای عملکرد سایت لازم‌اند، اما هیچ ارزشی برای نتایج جستجو ندارند. ایندکس شدن این صفحات نه‌تنها ترافیکی جذب نمی‌کند، بلکه می‌تواند تجربه کاربری در نتایج گوگل را خراب کند.
در این موارد، دستورهای زیر کمک‌کننده‌اند:

Disallow: /wp-admin/
Disallow: /cart/
Disallow: /checkout/
Disallow: /search/

جلوگیری از محتوای Thin Content

در سایت‌هایی با تولید محتوای انبوه یا اتوماتیک، گاهی صفحات کم‌ارزش با چند جمله یا محتوای تکراری تولید می‌شوند. اگر این صفحات در مسیر مشخصی قرار دارند (مثلاً /temp/ یا /auto/)، می‌توان کل پوشه را از دسترس خزنده‌ها خارج کرد.

Disallow: /auto/

این کار باعث می‌شود گوگل تمرکزش را روی صفحات کامل، غنی و باارزش بگذارد.

جلوگیری از ایندکس ناخواسته فایل‌ها یا پارامترهای جستجو

گاهی فایل‌هایی مانند PDF، تصاویر تکراری یا لینک‌های ردیابی (?utm_source=) وارد ایندکس می‌شوند. این موارد نیز با قوانین robots.txt قابل کنترل هستند:

Disallow: /*.pdf$
Disallow: /*?utm_source=

هشدار مهم: robots.txt جلوی ایندکس را «به‌صورت کامل» نمی‌گیرد

نکته‌ای که باید همیشه در نظر داشت این است که robots.txt فقط جلوی خزش را می‌گیرد، نه الزاماً ایندکس را.
اگر صفحه‌ای از جای دیگری لینک شده باشد، ممکن است بدون خزش (با متادیتا یا URL) ایندکس شود.
برای حذف کامل از ایندکس باید از meta noindex یا ابزار Remove URLs در سرچ کنسول استفاده شود.

آشنایی کامل با sitemap.xml و نحوه کارکرد آن

اگر robots.txt نگهبان ورودی سایت باشد، sitemap.xml نقشه‌ی دقیق مسیرهای درون آن است. این فایل به موتورهای جستجو کمک می‌کند تا صفحات مهم سایت را سریع‌تر پیدا کنند و آن‌ها را با اولویت بالاتر در فهرست ایندکس خود قرار دهند.

به‌عبارت ساده‌تر، sitemap.xml فهرستی ساخت‌یافته از تمام صفحات مهم سایت است که باید در نتایج جستجو ظاهر شوند — از صفحات خدمات و محصولات گرفته تا مقالات و صفحات دسته‌بندی.

۱. sitemap.xml دقیقاً چیست؟

فایلی با فرمت XML است که معمولاً در مسیر اصلی دامنه قرار دارد:

https://example.com/sitemap.xml

درون این فایل، آدرس هر صفحه (URL) همراه با اطلاعاتی مثل زمان آخرین به‌روزرسانی، اهمیت نسبی صفحه، و فاصله زمانی برای بررسی مجدد (crawl frequency) نوشته می‌شود. مثلاً:

<url>
<loc>https://example.com/blog/seo-guide</loc>
<lastmod>2025-10-28</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>

۲. نقش sitemap در سئو

گوگل معمولاً از طریق لینک‌های داخلی سایت شما را می‌خزد، اما در سایت‌های بزرگ یا تازه‌راه‌اندازی‌شده، ممکن است بعضی صفحات مهم هنوز لینک مستقیم نداشته باشند.
اینجاست که سایت‌مپ به‌عنوان میانبر هوشمند خزش وارد عمل می‌شود. با ارسال sitemap به گوگل، شما به موتور جستجو می‌گویید:

«این‌ها مهم‌ترین صفحات من هستند؛ از اینجا شروع کن!»

نتیجه این کار معمولاً ایندکس سریع‌تر، بهتر و منظم‌تر است.

۳. ساختار کلی فایل sitemap

هر سایت‌مپ از چند تگ XML تشکیل شده است:

  • <urlset>: تگ اصلی که همه آدرس‌ها داخلش قرار می‌گیرند.

  • <url>: تعریف هر آدرس جداگانه.

  • <loc>: آدرس صفحه.

  • <lastmod>: تاریخ آخرین تغییر.

  • <changefreq>: میزان تغییرات احتمالی محتوا (روزانه، هفتگی، ماهانه و…).

  • <priority>: اهمیت نسبی صفحه نسبت به سایر صفحات.

این اطلاعات به گوگل کمک می‌کند تا بفهمد کدام صفحات را زودتر بررسی کند و کدام‌ها را دیرتر.

۴. نحوه کار گوگل با sitemap

وقتی گوگل وارد سایت شما می‌شود (از طریق robots.txt یا سرچ کنسول)، sitemap.xml را می‌خواند، سپس تمام آدرس‌های داخلش را با دیتابیس خودش مقایسه می‌کند.
اگر صفحه‌ای جدید یا به‌روزشده باشد، در صف خزش قرار می‌گیرد. اگر از قبل ایندکس شده باشد، گوگل فقط زمان و تغییراتش را به‌روزرسانی می‌کند.

به همین دلیل است که sitemap نه‌تنها برای صفحات جدید، بلکه برای مدیریت به‌روزرسانی‌های منظم هم حیاتی است.

۵. انواع سایت‌مپ‌ها

سایت‌مپ فقط مخصوص صفحات HTML نیست؛ برای انواع محتوا وجود دارد:

  • Sitemap صفحات اصلی (URLs)

  • Sitemap تصاویر (Image Sitemap)

  • Sitemap ویدیوها (Video Sitemap)

  • Sitemap اخبار (News Sitemap)

  • Sitemap Index (برای زمانی که چند فایل سایت‌مپ داری)

در پروژه‌های بزرگ مثل فروشگاه‌ها یا پورتال‌های چندزبانه، معمولاً چند فایل sitemap ساخته می‌شود و همه در یک فایل اصلی به نام sitemap_index.xml معرفی می‌شوند.

۶. محدودیت‌های sitemap

هر فایل sitemap حداکثر می‌تواند شامل ۵۰٬۰۰۰ آدرس یا ۵۰ مگابایت حجم فشرده (gzip) باشد.
اگر سایتت بزرگ‌تر از این است، باید چند فایل سایت‌مپ جدا بسازی و در یک فایل شاخص معرفی کنی.

۷. بهترین محل قرارگیری فایل

فایل sitemap.xml باید در دایرکتوری ریشه سایت (Root Directory) قرار گیرد تا همه‌ی مسیرها از آن قابل دسترسی باشند.
همچنین بهتر است آدرس آن را در انتهای فایل robots.txt درج کنی تا گوگل در اولین خزش، مسیر نقشه را پیدا کند.

در فلسفه‌ی «سئو مورچه‌ای» 
هر سایت‌مپ مثل نقشه‌ی مسیر مورچه‌هاست: مسیرهای اصلی باید روشن، قابل دسترسی و بدون تکرار باشند.
یک سایت‌مپ دقیق، یعنی گوگل همیشه بداند از کجا شروع کند، کجا برود، و چه چیزهایی را نادیده بگیرد.

تفاوت بین نقشه سایت XML و HTML

در ظاهر، هر دو نوع نقشه سایت (XML و HTML) هدف مشترکی دارند: کمک به یافتن صفحات سایت.
اما در عمل، تفاوت آن‌ها در مخاطب اصلی و نقش در فرآیند خزش و تجربه کاربری است.

می‌توان گفت:

«نقشه سایت XML برای موتورهای جستجو ساخته می‌شود،
و نقشه سایت HTML برای انسان‌ها.»

۱. نقشه سایت XML — نقشه‌ای برای خزنده‌ها

فایل XML Sitemap نسخه‌ای فنی و ساختاریافته از تمام URLهای مهم سایت است که گوگل، بینگ و سایر موتورهای جستجو از آن برای شناسایی و اولویت‌بندی صفحات استفاده می‌کنند.

ویژگی‌های کلیدی:

  • فرمت دقیق و قابل‌خواندن برای ربات‌ها (با تگ‌هایی مثل <url>, <loc>, <lastmod>).

  • هیچ طراحی یا ظاهر بصری ندارد.

  • در مسیر اصلی سایت قرار می‌گیرد، مثلاً:

    https://example.com/sitemap.xml
  • فقط برای موتورهای جستجو کاربرد دارد، نه کاربران انسانی.

  • می‌تواند شامل اطلاعاتی مثل تاریخ آخرین تغییر و میزان اهمیت هر صفحه باشد.

هدف XML Sitemap:
افزایش سرعت و دقت ایندکس صفحات، مخصوصاً در سایت‌های بزرگ، تازه‌تأسیس، یا دارای ساختار پیچیده.

۲. نقشه سایت HTML — نقشه‌ای برای کاربران

در مقابل، HTML Sitemap یک صفحه معمولی داخل سایت است که به‌صورت دستی یا خودکار ساخته می‌شود تا کاربران بتوانند همه بخش‌های مهم سایت را یک‌جا ببینند و به آن‌ها دسترسی داشته باشند.

ویژگی‌های کلیدی:

  • در قالب صفحه‌ای گرافیکی و لینک‌دار طراحی می‌شود.

  • به کاربران (و خزنده‌ها) کمک می‌کند تا در سایت راحت‌تر حرکت کنند.

  • معمولاً شامل دسته‌بندی‌ها، صفحات خدمات، مقالات و لینک‌های داخلی است.

  • آدرس آن معمولاً این‌گونه است:

    https://example.com/sitemap/

هدف HTML Sitemap:
بهبود تجربه کاربری (UX)، افزایش ارتباطات داخلی (Internal Links)، و کمک به خزنده‌ها برای یافتن لینک‌هایی که ممکن است از مسیرهای دیگر در دسترس نباشند.

۳. مقایسه‌ی فنی و کاربردی

 مخاطب اصلی:
نقشه‌ی سایت XML مخصوص موتورهای جستجو مثل گوگل و بینگ طراحی شده تا صفحات را سریع‌تر شناسایی کنند،
درحالی‌که نقشه‌ی سایت HTML بیشتر برای کاربران و بهبود تجربه‌ی ناوبری در سایت کاربرد دارد.

 فرمت فایل:
نقشه‌ی XML در قالب فایل‌های ساختاریافته با تگ‌های XML ذخیره می‌شود.
اما HTML Sitemap در قالب یک صفحه‌ی وب معمولی با لینک‌های داخلی و طراحی قابل‌مشاهده ساخته می‌شود.

 هدف اصلی:
XML Sitemap برای ایندکس سریع‌تر و بهتر صفحات استفاده می‌شود،
درحالی‌که HTML Sitemap برای بهبود دسترسی و لینک‌سازی داخلی در بین صفحات مفید است.

نمایش ظاهری:
فایل XML هیچ ظاهر گرافیکی ندارد و فقط برای ربات‌ها قابل‌خواندن است.
اما HTML Sitemap به‌صورت یک صفحه‌ی قابل‌مشاهده برای کاربران نمایش داده می‌شود (معمولاً شامل فهرست لینک‌هاست).

 تأثیر در سئو:
نقشه‌ی XML تأثیر مستقیم بر سرعت ایندکس و Crawl Budget دارد،
در حالی‌که HTML Sitemap به‌صورت غیرمستقیم از طریق بهبود تجربه کاربری (UX) و لینک‌های داخلی بر سئو اثر می‌گذارد.

 محل قرارگیری معمول:
XML Sitemap معمولاً در ریشه‌ی سایت (Root Directory) قرار می‌گیرد،
در حالی که HTML Sitemap یکی از صفحات داخلی سایت است و اغلب در فوتر یا منوی اصلی لینک داده می‌شود.

۴. هم‌افزایی بین XML و HTML Sitemap

در «سئو مورچه‌ای» 🐜 همیشه تأکید می‌کنیم که این دو نقشه باید با هم کار کنند، نه جدا از هم.
XML Sitemap مسیر دقیق را به گوگل نشان می‌دهد، و HTML Sitemap راه را برای کاربر و لینک‌سازی داخلی هموار می‌کند.
ترکیب این دو باعث می‌شود:

  • ایندکس صفحات سریع‌تر انجام شود.

  • لینک‌های عمیق‌تر (Deep Pages) بهتر کشف شوند.

  • ساختار سایت در نگاه گوگل، منظم، سالم و کاربرمحور به نظر برسد.

معرفی انواع سایت‌مپ‌ها (عمومی، تصاویر، ویدئو، اخبار)

سایت‌مپ‌ها مثل مسیرهای جداگانه در کلونی مورچه‌ها هستند 🐜
هر مسیر برای هدف خاصی ساخته شده؛ یکی برای انتقال دانه‌ها (صفحات معمولی)، یکی برای حمل تصاویر، یکی برای اخبار تازه و یکی برای محتوای ویدیویی.
در دنیای وب هم، سایت‌مپ‌ها دقیقاً همین نقش رو دارند — هدایت منظم انواع محتوا برای موتورهای جستجو.

۱. سایت‌مپ عمومی (Standard XML Sitemap)

این همون نوع پایه و اصلیه که اکثر سایت‌ها دارن.
در این فایل، لیستی از تمام URLهای مهم سایت قرار می‌گیره؛ مثل صفحات خدمات، مقالات، دسته‌بندی‌ها و محصولات.

مثال:

<url>
  <loc>https://example.com/seo-services/</loc>
  <lastmod>2025-10-01</lastmod>
   <priority>1.0</priority>
</url>

کاربرد:

  • معرفی ساختار کلی سایت به گوگل

  • کمک به ایندکس سریع‌تر صفحات

  • مدیریت بهتر Crawl Budget

در سئو مورچه‌ای، این فایل حکم مسیر اصلی تونل‌ها رو داره که سایر مسیرها ازش منشعب می‌شن.

۲. سایت‌مپ تصاویر (Image Sitemap)

اگر سایت شما دارای گالری، محصولات تصویری یا مقالات آموزشی همراه با عکس‌های زیاد است،
داشتن Image Sitemap می‌تونه به گوگل کمک کنه تصاویر شما را بهتر ایندکس و در Google Images نمایش بده.

نمونه ساختار:

<url>
  <loc>https://example.com/blog/seo-basics/</loc>
  <image:image>
  <image:loc>https://example.com/images/seo-guide.jpg</image:loc>
  <image:title>آموزش مقدماتی سئو</image:title>
  </image:image>
</url>

کاربرد:

  • بهبود سئوی تصاویر

  • افزایش نمایش در Google Images

  • کمک به برندینگ بصری سایت

مثل مسیرهایی که مورچه‌ها برای حمل دانه‌های براق و رنگی دارن — این مسیر مخصوص تصاویر ارزشمند شماست!

۳. سایت‌مپ ویدئو (Video Sitemap)

اگر در سایت ویدیوهای آموزشی، تبلیغاتی یا محتوای اختصاصی دارید (مثلاً در آموزش سئو یا معرفی خدمات)،
Video Sitemap بهترین روشه تا گوگل بدونه هر ویدیو کجاست و درباره چیست.

نمونه ساختار:

<url>
 <loc>https://example.com/seo-course/</loc>
 <video:video>
 <video:title>آموزش سئو مقدماتی</video:title>
 <video:description>مروری بر اصول سئو سایت</video:description>             <video:content_loc>https://example.com/videos/intro.mp4</video:content_loc>         <video:thumbnail_loc>https://example.com/thumbnails/intro.jpg</video:thumbnail_loc>
 </video:video>
</url>

کاربرد:

  • افزایش احتمال نمایش ویدیو در نتایج جستجو (Video Snippet)

  • کمک به ایندکس درست ویدیوهای میزبان‌شده در سایت

مورچه‌ی آموزی دقیقاً از همین مسیر ویدئویی حرکت می‌کنه تا دانشش به همه تونل‌ها برسه

۴. سایت‌مپ اخبار (News Sitemap)

ویژه‌ی سایت‌هایی است که در Google News فعالیت دارند (مثل سایت‌های خبری یا وبلاگ‌هایی که روزانه محتوا منتشر می‌کنند).
این نوع سایت‌مپ، خبرهای منتشرشده در ۴۸ ساعت گذشته را شامل می‌شود تا گوگل سریع‌تر آن‌ها را ایندکس کند.

نمونه ساختار:

<url>
<loc>https://example.com/news/google-update/</loc>
<news:news>
<news:publication>
<news:name>SEO Ant News</news:name>
<news:language>fa</news:language>
</news:publication>
<news:publication_date>2025-11-01</news:publication_date>
<news:title>به‌روزرسانی جدید الگوریتم گوگل</news:title>
</news:news>
</url>

کاربرد:

  • کمک به دیده‌شدن سریع اخبار در Google News

  • مناسب برای سایت‌های خبری، تحلیلی یا مجلات آنلاین

مثل مسیر سریع مورچه‌های اطلاع‌رسان که خبرها را فوراً به کل کلونی منتقل می‌کنند

۵. سایت‌مپ ترکیبی (Index Sitemap)

وقتی تعداد URLهای شما از ۵۰ هزار تا بیشتر بشه یا حجم فایل XML بیش از ۵۰ مگابایت باشه، باید از Index Sitemap استفاده کنید.
این فایل در واقع لیستی از چندین سایت‌مپ دیگر است.

مثال:

<sitemapindex>
<sitemap>
<loc>https://example.com/sitemap-pages.xml</loc>
</sitemap>
<sitemap>
<loc>https://example.com/sitemap-images.xml</loc>
</sitemap>
</sitemapindex>

کاربرد:

  • مناسب برای سایت‌های بزرگ، فروشگاه‌ها یا سایت‌های چندزبانه

  • نظم‌دهی به چند نوع سایت‌مپ مختلف

جمع‌بندی

انتخاب نوع سایت‌مپ باید بر اساس ساختار و هدف وب‌سایت انجام شود. در ادامه، هر نوع سایت‌مپ و کاربرد اصلی آن را مرور می‌کنیم:

  • XML عمومی:
    مناسب برای تمام وب‌سایت‌هاست و وظیفه‌اش کمک به موتورهای جستجو برای ایندکس ساختار کلی صفحات (خانه، دسته‌بندی، مقالات و محصولات) است.

  • سایت‌مپ تصاویر:
    برای سایت‌های گرافیکی، فروشگاهی یا آموزشی ایده‌آل است. این نوع نقشه کمک می‌کند تصاویر سریع‌تر ایندکس شوند و در جستجوهای تصویری گوگل نمایش بهتری داشته باشند.

  • سایت‌مپ ویدئو:
    مخصوص سایت‌های آموزشی یا رسانه‌هایی است که محتوای ویدیویی دارند. این نوع سایت‌مپ باعث می‌شود گوگل محتوای ویدیوها را دقیق‌تر تشخیص دهد و در نتایج ویدیوها نمایش دهد.

  • سایت‌مپ اخبار (News Sitemap):
    برای وب‌سایت‌های خبری و مجلات آنلاین استفاده می‌شود تا مقالات جدید در کوتاه‌ترین زمان در نتایج جستجو ایندکس شوند.

  • سایت‌مپ ترکیبی (Sitemap Index):
    برای سایت‌های بزرگ، چندزبانه یا دارای زیرس

ساخت سایت‌مپ با افزونه‌های وردپرس (Yoast، Rank Math، All in One SEO)

در وردپرس، نیازی نیست سایت‌مپ رو دستی بنویسید یا کد XML تولید کنید.
افزونه‌های سئو مثل Yoast SEO، Rank Math و All in One SEO خودشون این فایل‌ها رو به‌صورت خودکار تولید و به‌روزرسانی می‌کنن.
اما نکته اینجاست که باید بدونید هرکدوم چطور سایت‌مپ رو می‌سازن، در کجا قرار می‌دن، و چطور باید تنظیماتش رو شخصی‌سازی کرد تا بهترین نتیجه رو بگیرید.

 ساخت سایت‌مپ با Yoast SEO

افزونه Yoast SEO یکی از قدیمی‌ترین و معتبرترین ابزارهای سئو وردپرسه.
به‌محض نصب و فعال‌سازی، به‌صورت خودکار سایت‌مپ شما رو ایجاد می‌کنه.

مسیر دسترسی:

https://yourdomain.com/sitemap_index.xml

مراحل فعال‌سازی و تنظیم:
  1. از پیشخوان وردپرس وارد مسیر
    SEO → General → Features شوید.

  2. گزینه XML Sitemaps را روی “On” بگذارید.

  3. روی آیکون سؤال (؟) کلیک کنید و گزینه See the XML sitemap را انتخاب کنید تا فایل را ببینید.

  4. در صورت نیاز می‌تونید نوع محتواهایی که باید در سایت‌مپ نمایش داده بشن (برگه‌ها، نوشته‌ها، دسته‌ها…) رو از مسیر
    SEO → Search Appearance → Content Types تنظیم کنید.

مزایا:

  • تولید خودکار چند نوع سایت‌مپ (صفحات، پست‌ها، تگ‌ها، دسته‌ها)

  • به‌روزرسانی خودکار با هر تغییر در محتوا

  • حذف راحت محتواهای غیرضروری از سایت‌مپ

مورچه‌های Yoast همیشه منظم و خودکار مسیرها رو به‌روزرسانی می‌کنن، فقط کافیه مسیر اصلی رو براشون مشخص کنی!

 ساخت سایت‌مپ با Rank Math

Rank Math افزونه‌ای مدرن‌تر با تنظیمات دقیق‌تر نسبت به Yoast است.
اگر دنبال کنترل کامل روی ساختار و محتوای سایت‌مپ هستی، این افزونه گزینه‌ی فوق‌العاده‌ایه.

مسیر دسترسی:

https://yourdomain.com/sitemap_index.xml

مراحل فعال‌سازی و تنظیم:

  1. از منوی وردپرس وارد
    Rank Math → Sitemap Settings شو.

  2. مطمئن شو گزینه Enable Sitemap روشن باشه.

  3. حالا می‌تونی در تب‌های جداگانه، تنظیمات سایت‌مپ برای پست‌ها، برگه‌ها، دسته‌ها و حتی CPTها (Custom Post Types) رو مدیریت کنی.

  4. در تب General می‌تونی تعداد لینک در هر فایل سایت‌مپ، اولویت و فرکانس بروزرسانی رو مشخص کنی.

  5. در نهایت، آدرس سایت‌مپ رو به سرچ کنسول اضافه کن تا گوگل شروع به ایندکس کنه.

مزایا:

  • پشتیبانی از انواع سایت‌مپ‌ها (تصویر، ویدئو، اخبار)

  • امکان ادغام چند سایت‌مپ در یک فایل Index

  • سازگار با سایت‌های چندزبانه (WPML یا Polylang)

مورچه‌ی Rank Math مثل مهندس دقیق کلونی کار می‌کنه — همه‌چیز رو دسته‌بندی و با نظم خاصی مسیر‌دهی می‌کنه

 ساخت سایت‌مپ با All in One SEO (AIOSEO)

All in One SEO Pack از نظر سادگی شبیه Yoast است اما تنظیمات سایت‌مپش انعطاف‌پذیرتره.
نسخه جدید این افزونه حتی امکان ساخت سایت‌مپ برای تصاویر، ویدئو و RSS رو هم داره.

مسیر دسترسی:

https://yourdomain.com/sitemap.xml
یا در نسخه‌های جدیدتر:
https://yourdomain.com/sitemap_index.xml

مراحل فعال‌سازی و تنظیم:

  1. از منوی وردپرس برو به
    All in One SEO → Sitemaps

  2. تیک گزینه Enable Sitemap را فعال کن.

  3. در بخش Additional Pages می‌تونی لینک‌هایی رو که خود وردپرس در سایت‌مپ قرار نمی‌ده، به‌صورت دستی اضافه کنی.

  4. در تب Advanced Settings امکان محدود کردن یا فیلترکردن دسته‌ها و برچسب‌ها وجود داره.

  5. تغییرات رو ذخیره کن و آدرس سایت‌مپ رو برای گوگل ارسال کن.

مزایا:

  • قابلیت افزودن دستی صفحات خاص

  • تنظیمات ساده و مناسب برای مبتدی‌ها

  • هماهنگی کامل با WooCommerce و سایت‌های فروشگاهی

 نکته فنی مهم:

  • اگر چند افزونه سئو هم‌زمان فعال باشن (مثلاً Yoast و Rank Math)، ممکنه چند سایت‌مپ مختلف ساخته بشه.
    این کار باعث سردرگمی خزنده‌ها و کاهش بودجه خزش می‌شه.
     همیشه فقط یک افزونه اصلی سئو را برای سایت‌مپ فعال نگه دار.

  • بعد از ساخت، آدرس سایت‌مپ رو به سرچ کنسول اضافه کن از مسیر:
    Index → Sitemaps → Add a new sitemap

ایجاد سایت‌مپ به‌صورت دستی با ابزارهای آنلاین

اگر سایت شما وردپرسی نیست یا ترجیح می‌دید فایل سایت‌مپ رو خودتون بسازید و کنترل کامل روی محتوای اون داشته باشید، ابزارهای آنلاین زیادی وجود دارن که می‌تونن در چند دقیقه سایت‌مپ XML حرفه‌ای تولید کنن.

مرحله ۱: انتخاب ابزار مناسب برای ساخت Sitemap

ابزارهای رایگان و آنلاین زیادی برای ساخت نقشه سایت وجود دارن. در ادامه چند مورد از بهترین گزینه‌ها رو معرفی می‌کنیم:

۱. XML-Sitemaps.com
 آدرس: https://www.xml-sitemaps.com
 ویژگی: ساده‌ترین و معروف‌ترین ابزار ساخت سایت‌مپ. فقط کافی‌ست آدرس سایت رو وارد کنی تا فایل XML آماده دانلود بشه.

۲. Screaming Frog SEO Spider
 آدرس: https://www.screamingfrog.co.uk/seo-spider/
 ویژگی: نرم‌افزار حرفه‌ای دسکتاپ برای ساخت Sitemap با کنترل کامل روی URLها، تگ‌های Canonical و وضعیت ایندکس صفحات.

۳. Yoast XML Generator (Online)
 آدرس: https://yoast.com/tools/xml-sitemap-generator/
 ویژگی: ابزار آنلاین تیم Yoast، مخصوص سایت‌های کوچک یا پروژه‌های آزمایشی برای تمرین ساخت Sitemap دستی.

۴. Inspyder Sitemap Creator
 آدرس: https://www.inspyder.com/products/SitemapCreator/
 ویژگی: ساخت خودکار Sitemap با امکان زمان‌بندی برای سایت‌های بزرگ و چندزبانه.

۵. GSiteCrawler (Windows)
نرمافزار رایگان و قدیمی اما پایدار.
 ویژگی: مناسب برای سایت‌های استاتیک یا HTML که به‌روزرسانی کمتری دارند.

 مرحله ۲: تنظیم آدرس و گزینه‌های خزش

پس از ورود به یکی از ابزارها (مثلاً XML-Sitemaps.com):

  1. آدرس اصلی سایت رو وارد کن، مثل
    https://seoant.ir

  2. اگر می‌خوای مسیرهای خاصی رو از نقشه حذف کنی (مثلاً /admin یا /cart)، در قسمت Exclude URLs وارد کن.

  3. سرعت خزش (Crawl Speed) و فرکانس به‌روزرسانی رو تنظیم کن — برای سایت‌های معمولی بهتره گزینه “Auto” بمونه.

  4. روی دکمه Start یا Generate Sitemap کلیک کن.

ابزار شروع می‌کنه به پیمایش تمام لینک‌های داخلی سایت و در نهایت، یک فایل XML کامل برات می‌سازه.

 مرحله ۳: دانلود و آپلود فایل در هاست

پس از اتمام اسکن، لینک دانلود فایل آماده می‌شه:
/sitemap.xml

حالا باید فایل رو در ریشه‌ی اصلی سایت (Root Directory) آپلود کنی.
یعنی دقیقاً در همان مسیری که فایل index.html یا wp-config.php قرار دارد.

مسیر درست:

https://yourdomain.com/sitemap.xml

اگر فایل رو در مسیرهای دیگر (مثل /public_html/subfolder/) بذاری، گوگل ممکنه نتونه اون رو به‌درستی بخونه.

 مرحله ۴: افزودن سایت‌مپ به robots.txt

برای اینکه خزنده‌ها سریع‌تر اون رو پیدا کنن، خط زیر رو در انتهای فایل robots.txt بنویس:

Sitemap: https://yourdomain.com/sitemap.xml

 مرحله ۵: ثبت سایت‌مپ در Google Search Console

در نهایت، وارد سرچ کنسول شو و از منوی Index → Sitemaps مسیر سایت‌مپ رو وارد کن.
مثلاً:

sitemap.xml

سپس روی Submit کلیک کن.
اگر فایل درست ساخته شده باشه، پیام “Success” نمایش داده می‌شه و گوگل شروع به ایندکس صفحات می‌کنه.

 نکات حرفه‌ای:

  • بهتره سایت‌مپ کمتر از ۵۰ مگابایت و دارای حداکثر ۵۰,۰۰۰ URL باشه.

  • اگر سایت خیلی بزرگه، از چند فایل و یک Index Sitemap استفاده کن.

  • حتماً بعد از هر تغییر ساختاری در سایت (مثل حذف یا تغییر آدرس صفحات)، نسخه جدید سایت‌مپ رو بساز و جایگزین قبلی کن.

  • در ابزارهای حرفه‌ای مثل Screaming Frog می‌تونی صفحات Noindex یا Canonical شده رو هم از سایت‌مپ حذف کنی تا Crawl Budget بهینه‌تر بشه.

مزیت‌های ساخت دستی سایت‌مپ

ساخت سایت‌مپ به‌صورت دستی، اگرچه زمان‌برتر از روش خودکار است، اما چند مزیت مهم برای سئوکاران حرفه‌ای دارد:

  • کنترل کامل روی محتوای سایت‌مپ:
    در این روش، می‌تونی دقیقاً مشخص کنی چه صفحات، پوشه‌ها یا مسیرهایی در نقشه سایت قرار بگیرند یا حذف شوند. این کنترل برای مدیریت سایت‌های بزرگ یا تخصصی بسیار ارزشمند است.

  • بدون نیاز به افزونه:
    ساخت دستی برای سایت‌های استاتیک، فروشگاه‌های اختصاصی یا پروژه‌هایی که نمی‌خوان با افزونه‌ها سنگین بشن، بهترین گزینه است.

  • شفافیت بیشتر برای سئوکاران حرفه‌ای:
    وقتی سایت‌مپ به‌صورت دستی نوشته می‌شه، ساختار XML آن کاملاً قابل‌مشاهده و تحلیل است؛ بنابراین می‌تونی خطاها یا مسیرهای اضافی را سریع‌تر پیدا و اصلاح کنی.

نحوه اضافه کردن Sitemap به سرچ کنسول گوگل

بعد از ساخت سایت‌مپ (چه با افزونه، چه دستی یا ابزار آنلاین)، باید اون رو در Google Search Console ثبت کنی تا گوگل بدونه مسیرهای اصلی سایت کجاست و چطور باید در اون حرکت کنه.
اگر این مرحله انجام نشه، ممکنه بخشی از صفحات سایتت ایندکس نشن یا خزنده‌ها بی‌هدف در صفحات غیرضروری وقت تلف کنن.=

 مرحله ۱: ورود به سرچ کنسول و انتخاب دامنه

  1. وارد حساب کاربری Google Search Console شو:
    https://search.google.com/search-console/

  2. از لیست بالا، دامنه‌ای که می‌خوای سایت‌مپش رو ثبت کنی انتخاب کن.

    • اگر هنوز دامنه رو اضافه نکردی، از گزینه “Add Property” استفاده کن و نوع Domain Property یا URL Prefix رو بسته به نوع مالکیت انتخاب کن.

 مرحله ۲: باز کردن بخش سایت‌مپ‌ها

از منوی سمت چپ مسیر زیر رو دنبال کن:
Index → Sitemaps

در این بخش دو قسمت اصلی وجود داره:

  • Add a new sitemap → برای ارسال جدید

  • Submitted sitemaps → برای مشاهده وضعیت سایت‌مپ‌های قبلی

 مرحله ۳: وارد کردن آدرس سایت‌مپ

در باکس مربوطه فقط مسیر سایت‌مپ رو وارد کن، نه کل URL دامنه.
مثلاً:

sitemap.xml

یا در صورت استفاده از افزونه‌ها:

sitemap_index.xml

سپس روی دکمه Submit کلیک کن.

وضعیت‌های مختلف بررسی سایت‌مپ در سرچ کنسول گوگل

وقتی سایت‌مپ خودت رو در Google Search Console ثبت می‌کنی، گوگل بلافاصله آن را بررسی می‌کند و یکی از وضعیت‌های زیر را نمایش می‌دهد:

  • Success (موفق):
    یعنی فایل سایت‌مپ به‌درستی شناسایی شده، هیچ خطایی ندارد و در حال پردازش برای ایندکس است.

  • Couldn’t fetch (عدم دسترسی):
    گوگل نتوانسته فایل را دریافت کند. معمولاً به دلیل اشتباه در آدرس URL سایت‌مپ یا بسته بودن دسترسی سرور به خزنده‌های گوگل رخ می‌دهد.

  • Has errors (دارای خطا):
    فایل پیدا شده، اما در ساختار XML یا لینک‌های داخلی آن اشکال وجود دارد. لازم است فایل بررسی و اصلاح شود تا گوگل بتواند آن را کامل پردازش کند.

  • Pending (در انتظار بررسی):
    گوگل سایت‌مپ را دریافت کرده ولی هنوز فرایند پردازش و ایندکس آن کامل نشده است. در سایت‌های جدید یا بسیار بزرگ این وضعیت ممکن است چند روز طول بکشد.

 مرحله ۴: بررسی و رفع خطاهای احتمالی

اگر وضعیت “Has errors” یا “Couldn’t fetch” دیدی، مراحل زیر رو بررسی کن:

  1. مطمئن شو آدرس دقیق فایل در مرورگر باز می‌شه.
    مثلاً وارد کن:
    https://yourdomain.com/sitemap.xml
    اگر باز نشد، مشکل از هاست یا مسیر فایل است.

  2. بررسی کن فایل robots.txt مانع دسترسی به سایت‌مپ نشده باشه.

  3. از ابزار URL Inspection استفاده کن تا مطمئن بشی آدرس‌ها ایندکس‌پذیر هستن.

  4. اگر از CDN یا کش استفاده می‌کنی، ممکنه نسخه‌ی قدیمی فایل لود بشه. یکبار کش رو پاک کن و دوباره تست بگیر.

مرحله ۵: بررسی عملکرد سایت‌مپ ثبت‌شده

بعد از چند روز (معمولاً ۲ تا ۷ روز)، گوگل داده‌های سایت‌مپ رو در سرچ کنسول نمایش می‌ده:

  • تعداد آدرس‌های شناسایی‌شده (Discovered URLs)

  • آخرین زمان خواندن (Last read)

  • تعداد آدرس‌های ایندکس‌شده

از همین بخش می‌تونی روند ایندکس صفحات جدید رو بررسی کنی و ببینی کدوم URLها هنوز ایندکس نشده‌ن.

 نکات حره‌ای مورچه‌ای برای مدیریت بهتر سایت‌مپ

  • همیشه فقط یک سایت‌مپ اصلی در سرچ کنسول ثبت کن، اما اگه چند نوع داری (مثل sitemap-posts.xml یا sitemap-products.xml) می‌تونی همه رو جداگانه هم ثبت کنی.

  • اگر ساختار URL سایت تغییر کرد، فوراً سایت‌مپ جدید ارسال کن تا گوگل مسیرها رو به‌روز کنه.

  • در پروژه‌های بزرگ، ثبت سایت‌مپ جداگانه برای بخش‌های مختلف (مثل وبلاگ، فروشگاه، ویدیو) باعث صرفه‌جویی در Crawl Budget می‌شه.

  • در سایت‌های چندزبانه، برای هر زبان یک سایت‌مپ جدا بساز و در Index Sitemap تجمیعش کن.

محدودیت تعداد URL در یک Sitemap و روش تقسیم آن‌ها به چند فایل

یکی از نکاتی که خیلی از مدیران سایت‌ها نادیده می‌گیرند، محدودیت رسمی در تعداد آدرس‌ها داخل هر فایل Sitemap است. طبق مستندات رسمی گوگل، هر فایل sitemap.xml می‌تواند حداکثر ۵۰٬۰۰۰ URL داشته باشد و حجم کل فایل نباید از ۵۰ مگابایت (۵۰MB) بیشتر شود.

در نگاه اول این مقدار زیاد به نظر می‌رسد، اما برای وب‌سایت‌های بزرگ، فروشگاه‌های آنلاین، خبرگزاری‌ها یا سایت‌های چندزبانه، این حد خیلی زود پر می‌شود. در چنین شرایطی، باید سایت‌مپ‌ها را به چند فایل مجزا تقسیم کنید تا گوگل بتواند تمام صفحات را بدون مشکل بخزد.

برای مثال، یک فروشگاه با ۱۰۰٬۰۰۰ محصول می‌تواند سایت‌مپ خود را به این شکل تنظیم کند:

/sitemap-products-1.xml
/sitemap-products-2.xml

و سپس از یک فایل مادر به نام Sitemap Index استفاده کند تا همه‌ی این فایل‌ها را به گوگل معرفی نماید:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://example.com/sitemap-products-1.xml</loc>
</sitemap>
<sitemap>
<loc>https://example.com/sitemap-products-2.xml</loc>
</sitemap>
</sitemapindex>

این فایل مادر همان نقشه‌ی کلی سایت‌مپ‌هاست و به گوگل می‌گوید که کل ساختار نقشه‌ها از چه بخش‌هایی تشکیل شده است. با این روش، گوگل می‌تواند همه‌ی فایل‌های فرعی را موازی بخزد و سرعت ایندکس به شکل چشمگیری افزایش می‌یابد.

در سایت‌های چندزبانه یا چندبخشی (مثلاً blog، shop، academy و …) هم می‌توان برای هر بخش سایت، یک سایت‌مپ جدا تعریف کرد:

/sitemap-blog.xml

/sitemap-shop.xml

/sitemap-academy.xml

و سپس همه‌ی آن‌ها را در فایل مادر sitemap_index.xml معرفی کرد.

ساخت Sitemap-Index برای سایت‌های بزرگ

وقتی سایت شما بزرگ می‌شود و تعداد صفحات از حد ۵۰٬۰۰۰ URL یا حجم ۵۰MB فراتر می‌رود، دیگر نمی‌توان همه‌ی صفحات را در یک فایل Sitemap گنجاند.
راهکار استاندارد، استفاده از Sitemap Index است؛ یعنی یک فایل مادر که چندین فایل Sitemap فرعی را در خود فهرست می‌کند.

 فایل Sitemap Index چیست؟

Sitemap Index یک فایل XML است که شامل آدرس فایل‌های Sitemap فرعی (Sub-Sitemaps) است.
گوگل از این فایل استفاده می‌کند تا همه‌ی Sitemapهای سایت را یکجا پیدا کند و به شکل موازی بخزد.

نمونه ساده ساختار یک Sitemap Index:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
 <sitemap>
  <loc>https://example.com/sitemap-products-1.xml</loc>
  <lastmod>2025-11-01</lastmod>
 </sitemap>
 <sitemap>
  <loc>https://example.com/sitemap-products-2.xml</loc>
  <lastmod>2025-11-01</lastmod>
 </sitemap>
 <sitemap>
  <loc>https://example.com/sitemap-blog.xml</loc>
  <lastmod>2025-11-01</lastmod>
 </sitemap>
 </sitemapindex>
  • هر <sitemap> یک فایل فرعی را معرفی می‌کند.

  • تگ <lastmod> اختیاری است ولی به گوگل نشان می‌دهد که آخرین تغییر فایل کی بوده است.

 نحوه تقسیم صفحات به فایل‌های فرعی

برای تقسیم‌بندی درست، می‌توان از چند روش استفاده کرد:

  1. تقسیم بر اساس نوع محتوا

    • محصولات فروشگاه → sitemap-products.xml

    • مقالات وبلاگ → sitemap-blog.xml

    • تصاویر → sitemap-images.xml

    • ویدئوها → sitemap-videos.xml

  2. تقسیم بر اساس حجم یا تعداد URL

    • هر فایل حداکثر ۵۰٬۰۰۰ URL داشته باشد

    • اگر فایل بزرگ‌تر شد، آن را به چند فایل فرعی تقسیم کنید: sitemap-products-1.xml, sitemap-products-2.xml

  3. تقسیم بر اساس دسته‌بندی یا زبان

    • سایت‌های چندزبانه → sitemap-en.xml, sitemap-fa.xml

    • دسته‌بندی‌های اصلی سایت → sitemap-category1.xml, sitemap-category2.xml

نکته: ترکیب روش‌ها هم امکان‌پذیره. مثلاً سایت بزرگ فروشگاهی می‌تواند هم بر اساس نوع محتوا و هم بر اساس دسته‌بندی فایل‌ها را تقسیم کند.

 ثبت Sitemap Index در سرچ کنسول

وقتی Sitemap Index ساخته شد، کافیست آدرس آن را در گوگل ثبت کنید:

  1. ورود به Google Search Console → انتخاب دامنه → Index → Sitemaps

  2. در قسمت Add a new sitemap، مسیر فایل Index را وارد کنید:

sitemap_index.xml
  1. روی Submit کلیک کنید

گوگل تمام فایل‌های فرعی را از طریق این فایل مادر پیدا کرده و شروع به ایندکس موازی صفحات می‌کند.

 نکات حرفه‌ای

  • همیشه آدرس فایل Index را هم در robots.txt قرار بده:

Sitemap: https://example.com/sitemap_index.xml
  • فایل‌های فرعی می‌توانند خودکار توسط افزونه‌های سئو یا ابزارهای آنلاین تولید شوند و Index فقط فایل‌های فرعی را معرفی کند.

  • برای سایت‌های بسیار بزرگ، می‌توان Sitemap Index را به چند Index دیگر تقسیم کرد، ولی اکثر سایت‌ها با یک Index اصلی مدیریت می‌شوند.

  • استفاده از Sitemap Index باعث بهینه‌سازی Crawl Budget می‌شود و خزنده‌های گوگل می‌توانند به‌صورت موازی بخش‌های سایت را بخزند.

بررسی وضعیت ایندکس صفحات از طریق گزارش Coverage در سرچ کنسول

بعد از ثبت Sitemap و ارسال صفحات به گوگل، مهم‌ترین کار این است که بررسی کنیم چه صفحاتی ایندکس شده‌اند، چه صفحاتی خطا دارند و چه صفحات از ایندکس جا مانده‌اند.
گزارش Coverage در Google Search Console دقیقاً این کار را انجام می‌دهد و مانند سیستم هشداردهی در کلونی مورچه‌هاست 🐜⚡ — به شما نشان می‌دهد کدام تونل‌ها مسدود شده‌اند و کجا باید مسیر را بازسازی کنید.

 دسترسی به گزارش Coverage

  1. وارد Google Search Console شوید.

  2. دامنه مورد نظر را انتخاب کنید.

  3. از منوی سمت چپ مسیر زیر را دنبال کنید:
    Index → Coverage

این گزارش وضعیت ایندکس تمام صفحات ثبت‌شده از طریق Sitemap یا کشف خودکار گوگل را نشان می‌دهد.

بخش‌های اصلی گزارش Coverage در سرچ کنسول

گزارش Coverage یکی از مهم‌ترین ابزارهای گوگل سرچ کنسول برای بررسی وضعیت ایندکس صفحات سایت است.
این گزارش صفحات سایت را در چند دسته‌ی اصلی تقسیم می‌کند:

۱. Error (خطا):
صفحات موجود در این بخش به‌دلیل خطاهای مهم ایندکس نشده‌اند.
دلایل رایج شامل خطای 404 (صفحه پیدا نشد) یا مشکل سرور (5xx) است.
اقدام لازم: آدرس صفحه را بررسی کن، خطا را برطرف کن و سپس از گزینه‌ی “Validate Fix” یا “Request Indexing” برای بررسی مجدد استفاده کن.

۲. Valid with warnings (معتبر با هشدار):
این صفحات ایندکس شده‌اند، اما هشدارهایی دارند — مثلاً دارای تگ canonical اشتباه، noindex یا مسدود شده با robots.txt هستند.
اقدام لازم: علت هشدار را بررسی کن و در صورت نیاز تنظیمات صفحه را اصلاح کن تا از بروز خطاهای بیشتر جلوگیری شود.

۳. Valid (معتبر):
صفحات این بخش با موفقیت ایندکس شده‌اند و هیچ مشکلی ندارند.
اقدام لازم: نیازی به اقدام خاصی نیست، فقط می‌تونی این صفحات را در گزارش Performance از نظر کلیک و رتبه بررسی کنی.

۴. Excluded (حذف‌شده):
صفحاتی که گوگل آن‌ها را به دلایل مختلف ایندکس نکرده است — مانند duplicate (تکراری)، blocked by robots.txt یا noindex.
اقدام

تحلیل گزارش Coverage

  1. صفحات Error را جدی بگیرید

    • خطاهای رایج: 404، 500، Soft 404، Server error

    • اقدام: اصلاح لینک‌ها، بازگرداندن محتوا یا ریدایرکت مناسب

  2. صفحات Excluded را بررسی کنید

    • علت‌های رایج:

      • Noindex شدن صفحه

      • Block شده توسط robots.txt

      • Duplicate یا canonical pointing elsewhere

    • تصمیم‌گیری: اگر صفحه مهم است، خطا را رفع کن؛ اگر غیرضروری است، می‌توان آن را نادیده گرفت

  3. Valid with warnings

    • مثال: صفحه canonical به صفحه دیگری اشاره دارد

    • اکثراً نیاز به اصلاح فوری نیست، اما باید نظارت شود

  4. Valid

    • این‌ها صفحات سالم سایت شما هستند که خزنده‌ها توانسته‌اند آن‌ها را ایندکس کنند.

 ارتباط Coverage با Sitemap

  • Sitemap کمک می‌کند گوگل صفحات مهم را سریع‌تر پیدا کند.

  • اما تنها ثبت Sitemap کافی نیست؛ باید گزارش Coverage را بررسی کنید تا ببینید گوگل چه صفحات را ایندکس کرده و کدام‌ها مشکل دارند.

  • اگر تعداد زیادی صفحه در وضعیت Excluded یا Error هستند، باید Sitemap و robots.txt را بازبینی کنید.

 نکات حرفه‌ای برای استفاده از Coverage

  • به‌روز نگه داشتن گزارش: گزارش را حداقل هفته‌ای یکبار بررسی کنید تا تغییرات سایت و صفحات جدید تحت کنترل باشد.

  • فیلتر کردن بر اساس نوع محتوا: در سایت‌های بزرگ، می‌توان گزارش را بر اساس مسیر (مثلاً /blog، /shop) یا نوع محتوا (posts, products) فیلتر کرد.

  • همراه با URL Inspection: برای بررسی دقیق یک URL خاص، از ابزار URL Inspection استفاده کنید تا ببینید آخرین وضعیت ایندکس و کش گوگل چیست.

  • بررسی همزمان Errorها و Sitemap: مطمئن شوید همه URLهای مهم در Sitemap ثبت شده و هیچ صفحه مهمی در دسته Excluded یا Error جا نمانده باشد.

مدیریت URLهای حذف‌شده یا ریدایرکت‌شده در Sitemap

وقتی صفحات سایت حذف یا به آدرس جدید منتقل می‌شوند، اگر Sitemap شما همچنان شامل این URLها باشد، گوگل زمان و بودجه خزش را روی صفحات غیر موجود یا ریدایرکت‌شده هدر می‌دهد.
این موضوع باعث کاهش Crawl Efficiency و گاهی کاهش رتبه صفحات مهم می‌شود.

 شناسایی URLهای حذف‌شده یا ریدایرکت‌شده

  1. گزارش Coverage در سرچ کنسول

    • صفحات حذف‌شده یا ریدایرکت‌شده معمولاً در دسته Error → 404 یا Excluded → Redirected ظاهر می‌شوند.

  2. ابزارهای آنالیز سایت

    • ابزارهایی مثل Screaming Frog یا Ahrefs Site Audit می‌توانند URLهای 404 و ریدایرکت‌ها را شناسایی کنند.

 نحوه مدیریت این URLها در Sitemap

  1. حذف URLهای 404 یا صفحات حذف‌شده از Sitemap

    • اگر صفحه حذف شده و قصد بازگرداندن آن را ندارید، URL مربوطه را از Sitemap بردارید.

    • فایل Sitemap را بروزرسانی کرده و نسخه جدید را دوباره به Google Search Console ارسال کنید.

  2. مدیریت URLهای ریدایرکت‌شده (301/302)

    • اگر صفحه به آدرس جدید منتقل شده است:

      • URL قدیمی را از Sitemap حذف کنید

      • فقط URL جدید را در Sitemap قرار دهید

    • گوگل به سرعت آدرس جدید را ایندکس کرده و لینک‌های قدیمی را به URL جدید منتقل می‌کند.

  3. توجه به ریدایرکت‌های موقت (302)

    • صفحات با ریدایرکت 302 نباید در Sitemap قرار بگیرند، چون خزنده گوگل هنوز URL اصلی را ایندکس می‌کند و ممکن است مشکلات Duplicate ایجاد شود.

 ابزارهای خودکار برای بروزرسانی Sitemap

  • افزونه‌های وردپرس

    • Yoast SEO، Rank Math و AIOSEO به‌صورت خودکار URLهای حذف‌شده را از Sitemap حذف می‌کنند.

    • در صورت ریدایرکت، URL جدید جایگزین می‌شود.

  • ابزارهای سایت‌مپ آنلاین یا نرم‌افزارهای حرفه‌ای

    • Screaming Frog، XML-Sitemaps.com و Inspyder Sitemap Creator می‌توانند هر بار سایت را خزش کنند و Sitemap به‌روز تولید کنند.

 نکات حرفه‌ای

  • همیشه URLهای حذف‌شده یا ریدایرکت‌شده را حداقل یک بار در هفته بررسی کنید.

  • از robots.txt برای بلاک کردن URLهای حذف‌شده استفاده نکنید؛ بهتر است URL از Sitemap حذف شود و اگر نیاز است، ریدایرکت 301 اعمال کنید.

  • در سایت‌های فروشگاهی یا خبری با تعداد بالای محصولات، پیشنهاد می‌شود Sitemap را پویا و خودکار نگه دارید تا هر تغییر سریعاً به گوگل گزارش شود.

به‌روزرسانی خودکار نقشه سایت هنگام انتشار مقاله جدید

یکی از اهداف اصلی Sitemap، کمک به خزنده‌های گوگل برای پیدا کردن سریع محتوای تازه است.
اگر Sitemap به‌صورت دستی آپدیت شود، احتمال دارد صفحات جدید با تأخیر ایندکس شوند.
راه حل: به‌روزرسانی خودکار Sitemap به محض انتشار محتوا.

 روش‌های به‌روزرسانی خودکار Sitemap

۱. استفاده از افزونه‌های وردپرس

اگر سایت شما وردپرسی است، افزونه‌های سئو به‌راحتی این کار را انجام می‌دهند:

  • Yoast SEO

    • به محض انتشار یا به‌روزرسانی مقاله، Sitemap خودکار بروزرسانی می‌شود.

    • URL جدید بلافاصله در فایل sitemap_index.xml ظاهر می‌شود.

  • Rank Math

    • علاوه بر اضافه کردن URL جدید، می‌توانید اولویت و فرکانس بروزرسانی را تنظیم کنید تا گوگل سریع‌تر صفحات تازه را بخزد.

  • All in One SEO

    • هنگام انتشار محتوا، URL جدید به Sitemap اضافه شده و همزمان در Search Console قابل شناسایی است.

مزیت افزونه‌ها: شما هیچ کاری دستی انجام نمی‌دهید، و Sitemap همیشه به‌روز است.

۲. استفاده از ابزارهای آنلاین یا نرم‌افزارهای حرفه‌ای

برای سایت‌های غیر وردپرسی یا CMS اختصاصی:

  • Screaming Frog SEO Spider یا Inspyder Sitemap Creator

    • قابلیت زمان‌بندی دارند و می‌توانند هر روز یا هر ساعت سایت را خزش کرده و Sitemap جدید بسازند.

  • ابزارهای آنلاین مثل XML-Sitemaps.com

    • مناسب سایت‌های کوچک که می‌توانند با هر انتشار محتوا، Sitemap جدید دانلود و جایگزین نسخه قبلی شود.

 ثبت Sitemap به‌روز در گوگل

  • اگر Sitemap به‌صورت خودکار آپدیت می‌شود، معمولاً نیاز به ارسال دوباره در Search Console نیست.

  • گوگل هر چند وقت یکبار Sitemap را بررسی می‌کند، اما برای انتشارهای مهم یا صفحات حساس، می‌توان از گزینه “Request Indexing” در URL Inspection استفاده کرد تا ایندکس سریع‌تر انجام شود.

نکات حرفه‌ای

  • همیشه آدرس سایت‌مپ اصلی (sitemap_index.xml) در فایل robots.txt قرار داشته باشد:

Sitemap: https://example.com/sitemap_index.xml
  • در سایت‌های پرمحتوا، بهتر است Sitemap به بخش‌های کوچک‌تر تقسیم شود و هر بخش به‌صورت پویا به‌روزرسانی شود (مثلاً blog-sitemap.xml، products-sitemap.xml).

  • برای محتوای با اولویت بالا (مثل اخبار فوری یا محصولات جدید)، از RSS feed هم می‌توان به عنوان مکمل Sitemap استفاده کرد تا خزنده‌ها سریع‌تر صفحه را پیدا کنند.

نکات طلایی برای ساخت Sitemap تمیز و بهینه

یک Sitemap خوب، مثل نقشه دقیق تونل‌های کلونی مورچه‌هاست. اگر درست طراحی شود، خزنده‌های گوگل سریع و بدون هدر رفتن بودجه صفحات مهم را پیدا می‌کنند و صفحات غیرضروری کنار گذاشته می‌شوند.

 ۱. فقط صفحات مهم را در Sitemap قرار دهید

  • صفحات مهم شامل: مقالات، محصولات، دسته‌بندی‌ها، صفحات خدمات و صفحات با محتوای ارزشمند.

  • صفحات غیرضروری یا تکراری را در Sitemap قرار ندهید:

    • صفحات admin یا wp-login

    • صفحات فیلتر یا جستجو

    • صفحات duplicate یا thin content

مورچه‌های گوگل وقتشان را روی تونل‌های بی‌ارزش هدر نمی‌دهند. 🐜

 ۲. محدودیت‌ها را رعایت کنید

  • هر فایل Sitemap حداکثر ۵۰٬۰۰۰ URL داشته باشد

  • حجم فایل حداکثر ۵۰ مگابایت باشد

  • اگر سایت بزرگ است، چند فایل فرعی بسازید و از Sitemap Index استفاده کنید

 ۳. بروزرسانی خودکار

  • برای سایت‌های پویا (وبلاگ، فروشگاه، اخبار)، Sitemap باید به محض انتشار محتوای جدید به‌روز شود

  • استفاده از افزونه‌های وردپرسی (Yoast، Rank Math، AIOSEO) یا ابزارهای خودکار برای سایت‌های غیر وردپرسی توصیه می‌شود

 ۴. مدیریت URLهای حذف‌شده و ریدایرکت‌شده

  • صفحات حذف‌شده را از Sitemap بردارید

  • صفحات ریدایرکت‌شده (301) فقط آدرس جدیدشان در Sitemap قرار گیرد

  • ریدایرکت 302 یا صفحات موقتی نباید در Sitemap باشند

 ۵. افزودن Sitemap به robots.txt

در فایل robots.txt مسیر Sitemap را مشخص کنید تا خزنده‌ها فوراً آن را پیدا کنند:

Sitemap: https://example.com/sitemap_index.xml

 ۶. ثبت و بررسی در Google Search Console

  • پس از ساخت یا بروزرسانی Sitemap، آن را در Search Console → Sitemaps ثبت کنید

  • گزارش Coverage را بررسی کنید تا مطمئن شوید همه صفحات مهم ایندکس شده‌اند

  • خطاها و هشدارها را سریعا رفع کنید

 ۷. استفاده از Sitemap Index برای سایت‌های بزرگ

  • تقسیم Sitemap بر اساس نوع محتوا، دسته‌بندی یا زبان

  • ثبت Sitemap Index به جای فایل‌های تکی برای مدیریت بهتر Crawl Budget

  • بروزرسانی همزمان فایل‌های فرعی و فایل مادر

 ۸. رعایت استانداردهای XML

  • فرمت صحیح XML برای Sitemap الزامی است

  • URLها باید از لحاظ نحوی صحیح و با HTTPS یا HTTP کامل باشند

  • از کاراکترهای غیرمجاز یا فاصله در URLها خودداری کنید

 ۹. نظارت منظم

  • حداقل هفته‌ای یکبار گزارش Coverage را بررسی کنید

  • URLهای جدید، حذف‌شده و ریدایرکت‌شده را کنترل کنید

  • Sitemap همیشه باید بازتاب‌دهنده ساختار واقعی سایت باشد

همگام‌سازی کامل بین robots.txt و sitemap.xml

برای اینکه خزنده‌های گوگل بهینه و سریع صفحات سایت را ایندکس کنند، باید robots.txt و Sitemap با هم هماهنگ باشند.
اگر این دو فایل مغایرت داشته باشند، گوگل ممکن است صفحات مهم را نخزد یا صفحات غیرضروری را ایندکس کند، که نتیجه آن هدر رفتن Crawl Budget و کاهش رتبه سایت است.

 اصول همگام‌سازی

  1. URLهای بلاک‌شده در robots.txt نباید در Sitemap باشند

    • اگر مسیر /wp-admin/ یا /search/ در robots.txt مسدود شده، نباید در Sitemap ظاهر شود.

    • قرار دادن URL مسدود در Sitemap باعث خطاهای Blocked by robots.txt در گزارش Coverage می‌شود.

  2. همه URLهای موجود در Sitemap باید قابل خزش باشند

    • یعنی هیچ مسیر مهمی که می‌خواهید ایندکس شود، در robots.txt مسدود نباشد.

    • مثال: صفحات محصول یا مقاله نباید توسط Disallow بلاک شوند.

  3. سازماندهی مسیرها و دسته‌بندی‌ها

    • برای سایت‌های بزرگ و چندزبانه، مطمئن شوید تمام Sitemapهای فرعی و فایل مادر (Sitemap Index) شامل فقط URLهای مجاز هستند.

    • مسیرهای بلاک‌شده (مثلاً /private/ یا /temp/) را در هیچ Sitemap فرعی نگذارید.

  4. به‌روزرسانی همزمان

    • هر بار که فایل robots.txt تغییر می‌کند، Sitemap را هم بررسی و بروزرسانی کنید تا هماهنگی حفظ شود.

    • ابزارهایی مثل افزونه‌های وردپرس و Sitemap Generatorهای حرفه‌ای این همگام‌سازی را خودکار انجام می‌دهند.

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

  1. Google Search Console

    • بخش URL Inspection را برای چند URL مهم بررسی کنید.

    • مطمئن شوید که صفحات موجود در Sitemap، قابل خزش هستند و خطای Blocked by robots.txt ندارند.

  2. Robots.txt Tester

    • از ابزار Robots.txt Tester در سرچ کنسول استفاده کنید تا مطمئن شوید مسیرهای مهم در robots.txt مسدود نشده‌اند.

  3. Coverage Report

    • بررسی کنید صفحات مهم در وضعیت Valid هستند و صفحات غیرضروری در وضعیت Excluded یا Error قرار گرفته‌اند.

 نکات حرفه‌ای مورچه‌ای

  • همیشه Sitemap را در robots.txt معرفی کنید:

Sitemap: https://example.com/sitemap_index.xml
  • مسیرهای ریدایرکت‌شده یا حذف‌شده را در Sitemap آپدیت کنید و مطمئن شوید robots.txt آن‌ها را مسدود نکرده است.

  • در سایت‌های بزرگ، Sitemap Index را به بخش‌های کوچک تقسیم کنید و فقط URLهای قابل خزش را در آن‌ها قرار دهید.

  • بررسی دوره‌ای هماهنگی بین robots.txt و Sitemap باعث افزایش سرعت ایندکس و بهینه‌سازی Crawl Budget می‌شود.

مثال از ساختار استاندارد و هماهنگ برای سایت‌های وردپرسی

فرض کنیم یک سایت وردپرسی فروشگاهی با بخش وبلاگ داریم. ساختار فایل‌ها و مسیرها می‌تواند به شکل زیر باشد:

۱. robots.txt استاندارد

# اجازه به همه خزنده‌ها
User-agent: *
Disallow: /wp-admin/
Disallow: /wp-login.php
Disallow: /wp-includes/
Disallow: /cgi-bin/
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Disallow: /?s=
Allow: /wp-admin/admin-ajax.php
# مسیر فایل Sitemap
Sitemap: https://example.com/sitemap_index.xml

توضیح مورچه‌ای:

  • /wp-admin/ و صفحات ورود بلاک شده تا خزنده‌ها وقتشان را روی صفحات مدیریتی هدر ندهند.

  • صفحات اصلی سایت (محصولات، مقالات، دسته‌بندی‌ها) آزاد و قابل خزیدن هستند.

  • Sitemap معرفی شده تا گوگل مسیر همه URLهای مهم را سریع پیدا کند.

۲. Sitemap Index وردپرس

وردپرس با افزونه‌های سئو مثل Yoast SEO یا Rank Math به‌صورت خودکار Sitemap Index تولید می‌کند. ساختار استاندارد آن به شکل زیر است:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://example.com/post-sitemap.xml</loc>
<lastmod>2025-11-01</lastmod>
</sitemap>
<sitemap>
<loc>https://example.com/page-sitemap.xml</loc>
<lastmod>2025-11-01</lastmod>
</sitemap>
<sitemap>
<loc>https://example.com/product-sitemap.xml</loc>
<lastmod>2025-11-01</lastmod>
</sitemap>
<sitemap>
<loc>https://example.com/category-sitemap.xml</loc>
<lastmod>2025-11-01</lastmod>
</sitemap>
<sitemap>
<loc>https://example.com/tag-sitemap.xml</loc>
<lastmod>2025-11-01</lastmod>
</sitemap>
</sitemapindex>

توضیح مورچه‌ای:

  • هر فایل فرعی یک نوع محتوا را شامل می‌شود: مقالات، صفحات، محصولات، دسته‌بندی‌ها، تگ‌ها.

  • URLهای حذف‌شده یا ریدایرکت‌شده از Sitemap حذف می‌شوند و فقط URLهای قابل خزش باقی می‌مانند.

  • Lastmod به گوگل نشان می‌دهد که چه زمانی فایل بروزرسانی شده است.

۳. هماهنگی robots.txt و Sitemap

  • تمام URLهایی که در Sitemap هستند، باید در robots.txt بلاک نشده باشند.

  • URLهای بلاک‌شده (مثل wp-admin، checkout، cart) در Sitemap حذف شده‌اند.

  • Sitemap Index معرفی شده در robots.txt تا خزنده‌ها آن را سریع پیدا کنند.

۴. نکات حرفه‌ای

  1. به‌روزرسانی خودکار: با افزونه‌های سئو، هر انتشار مقاله یا محصول جدید، Sitemap به‌روز می‌شود.

  2. ریدایرکت‌ها: URLهای قدیمی که ریدایرکت شده‌اند از Sitemap حذف شوند.

  3. چک‌لیست دوره‌ای: حداقل ماهی یکبار Coverage در Search Console بررسی شود تا همه صفحات مهم ایندکس شده باشند.

  4. تقسیم‌بندی بزرگ سایت‌ها: اگر سایت بیش از ۵۰٬۰۰۰ URL دارد، Sitemap Index را به بخش‌های کوچک‌تر تقسیم کنید.

ساختار پیشنهادی برای سایت‌های فروشگاهی با دسته‌بندی زیاد

۱. فایل robots.txt پیشنهادی

# فایل robots.txt پیشنهادی برای فروشگاه‌های بزرگ
User-agent: *
# بلاک مسیرهای غیرضروری
Disallow: /wp-admin/
Disallow: /wp-login.php
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Disallow: /compare/
Disallow: /wishlist/
Disallow: /track-order/
Disallow: /search/
Disallow: /tag/
Disallow: /?s=
Disallow: /*add-to-cart=*
Disallow: /*?orderby=*
Disallow: /*?filter_*
Disallow: /*?rating=*
Allow: /wp-admin/admin-ajax.php
# معرفی Sitemap اصلی
Sitemap: https://example.com/sitemap_index.xml

توضیح مورچه‌ای:

  • مسیرهای پویا (فیلتر، سبد خرید، جستجو) مسدود شدن تا گوگل وارد صفحات بی‌ارزش نشه.

  • فقط صفحات اصلی محصولات، دسته‌بندی‌ها، برندها و مقالات باز می‌مونن.

  • این تنظیمات از ایجاد میلیون‌ها URL تکراری جلوگیری می‌کنه و Crawl Budget رو متمرکز می‌سازه.

۲. ساختار Sitemap پیشنهادی

برای سایت‌های فروشگاهی بزرگ، باید از Sitemap Index استفاده بشه تا URLها تقسیم و مدیریت‌پذیر باشن.

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<!-- محصولات -->

<sitemap>
<loc>https://example.com/sitemap-products-1.xml</loc>
</sitemap>
<sitemap>
<loc>https://example.com/sitemap-products-2.xml</loc>
</sitemap>
<!-- دسته‌بندی‌ها -->

<sitemap>
<loc>https://example.com/sitemap-categories.xml</loc>
</sitemap>
<!-- برندها -->

<sitemap>
<loc>https://example.com/sitemap-brands.xml</loc>
</sitemap>
<!-- صفحات اصلی و مقالات -->

<sitemap>
<loc>https://example.com/sitemap-pages.xml</loc>
</sitemap>
<sitemap>
<loc>https://example.com/sitemap-posts.xml</loc>
</sitemap>
</sitemapindex>

نکات کلیدی:

  • هر فایل حداکثر ۵۰٬۰۰۰ URL یا ۵۰ مگابایت حجم داشته باشه.

  • تقسیم محصولات به چند Sitemap بر اساس دسته یا برند باعث میشه ایندکس سریع‌تر و پایدارتر انجام بشه.

  • Sitemap Index باید فقط شامل مسیرهای مجاز از دید robots.txt باشه.

۳. هماهنگی بین robots.txt و Sitemap

 در Sitemap فقط URLهای دسته‌بندی، محصول، برند و مقاله قرار بگیرند.
 مسیرهای فیلتر، جستجو، تگ، پارامترهای سبد خرید و موارد مشابه حذف شوند.
 Sitemap Index در robots.txt معرفی شود.
 هر تغییر در ساختار دسته‌بندی یا URL باید در Sitemap منعکس شود.

۴. ساختار فنی پیشنهادی برای افزونه‌ها

اگر وردپرس استفاده می‌کنی:

  • Rank Math → بخش Sitemap Settings → Include only Product, Page, Post, Category

  • Yoast SEO Premium → تنظیم Remove filter and tag archives from XML Sitemap

  • All in One SEO → فعال‌سازی Sitemap Index برای محصولات و دسته‌ها

۵.چک‌لیست حرفه‌ای مورچه‌ای برای فروشگاه‌های بزرگ

اگر فروشگاه اینترنتی بزرگی داری، مدیریت فایل‌های robots.txt و sitemap.xml باید منظم و دوره‌ای انجام بشه. در ادامه، چک‌لیست پیشنهادی تیم سئو مورچه‌ای برای حفظ سلامت فنی سایت رو بخون:

۱. بررسی robots.txt در سرچ کنسول:
هدف از این کار، اطمینان از باز بودن مسیرهای حیاتی مثل صفحات محصولات و دسته‌بندی‌هاست.
زمان انجام: ماهی یک‌بار.

۲. بررسی گزارش Coverage:
این گزارش کمک می‌کنه صفحات خطادار یا مسدودشده شناسایی بشن تا از هدر رفت Crawl Budget جلوگیری بشه.
زمان انجام: هر دو هفته یک‌بار.

۳. حذف URLهای حذف‌شده از Sitemap:
وقتی محصولی از فروشگاه حذف می‌شه، آدرس اون نباید در سایت‌مپ باقی بمونه، چون باعث ایجاد خطاهای 404 در سرچ کنسول میشه.
زمان انجام: هم‌زمان با حذف محصول از سایت.

۴. به‌روزرسانی Sitemap:
افزودن محصولات و دسته‌های جدید باید باعث به‌روزرسانی خودکار یا دوره‌ای نقشه سایت بشه تا گوگل سریع‌تر تغییرات رو شناسایی کنه.
زمان انجام: به‌صورت خودکار یا هفتگی.

۵. تقسیم Sitemap بر اساس دسته‌ها:
در سایت‌های بزرگ، بهتره برای هر گروه محصول یا زبان جداگانه یک سایت‌مپ مستقل ساخته بشه تا بودجه خزش بهتر مدیریت بشه.
زمان انجام: فصلی یا هنگام بازطراحی ساختار سایت.

نحوه مدیریت Sitemap در دامنه‌های فرعی (Subdomain)

 چرا ساب‌دامین‌ها Sitemap جداگانه می‌خواهند

گوگل هر ساب‌دامین را به‌عنوان یک موجودیت مجزا می‌شناسد.
یعنی blog.example.com از نظر فنی و سئویی با example.com متفاوت است.
بنابراین:

  • هر ساب‌دامین باید robots.txt و Sitemap مخصوص خودش داشته باشد.

  • هرکدام باید جداگانه در سرچ کنسول ثبت شوند.

ساختار پیشنهادی برای سایت‌های چند ساب‌دامینه

فرض کنیم ساختار یک سایت بزرگ با چند زیردامنه (subdomain) به شکل زیر باشه:

۱. سایت اصلی – https://example.com
نوع محتوا: صفحات شرکتی، معرفی خدمات، صفحه درباره ما، تماس با ما
نکته: در این دامنه معمولاً فایل اصلی robots.txt و sitemap اصلی قرار می‌گیره که می‌تونه لینک سایر sitemapهای ساب‌دامین‌ها رو هم در خودش داشته باشه.

۲. فروشگاه – https://shop.example.com
نوع محتوا: محصولات، دسته‌بندی‌ها، صفحات جزئیات کالا
نکته: بهتره sitemap فروشگاه به‌صورت جداگانه ساخته بشه (مثل shop-sitemap.xml) و در robots.txt ساب‌دامین فروشگاه معرفی بشه.

۳. بلاگ – https://blog.example.com
نوع محتوا: مقالات آموزشی، اخبار، راهنماها
نکته: این بخش معمولاً نیاز به sitemap جداگانه داره تا محتوای آموزشی سریع‌تر ایندکس بشه. در فایل robots.txt بلاگ می‌شه sitemap خودش رو معرفی کرد.

۴. پشتیبانی – https://support.example.com
نوع محتوا: مقالات راهنما، سؤالات متداول، تیکت‌های پشتیبانی
نکته: این ساب‌دامین معمولاً عمومی نیست، پس می‌تونه از طریق robots.txt دسترسی خزنده‌ها به بخش‌های غیرضروری (مثل /tickets/) رو مسدود کنه.

 نکته نهایی:
برای سایت‌های چند ساب‌دامینه، هر ساب‌دامین باید فایل robots.txt و sitemap مستقل داشته باشه،
اما در صورت نیاز می‌شه همه‌ی sitemapها رو در یک فایل مرکزی (https://example.com/sitemap_index.xml) لیست کرد تا گوگل از طریق دامنه اصلی به تمام زیردامنه‌ها دسترسی پیدا کنه.

 برای هر Subdomain یک robots.txt جدا بساز

example.com/robots.txt

User-agent: *
Disallow: /private/
Sitemap: https://example.com/sitemap_index.xml

shop.example.com/robots.txt

User-agent: *
Disallow: /cart/
Disallow: /checkout/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://shop.example.com/sitemap_index.xml

blog.example.com/robots.txt

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://blog.example.com/sitemap_index.xml

support.example.com/robots.txt

User-agent: *
Disallow: /admin/
Sitemap: https://support.example.com/sitemap.xml

 ایجاد Sitemap جداگانه برای هر ساب‌دامین

هر بخش باید Sitemap خودش را تولید کند، مثلاً:

https://example.com/sitemap_index.xml

https://shop.example.com/sitemap_index.xml

https://blog.example.com/sitemap_index.xml

https://support.example.com/sitemap.xml

هر کدام شامل فقط URLهای همان زیردامنه باشد (نه دامنه دیگر).

 معرفی همه Sitemapها به گوگل

در سرچ کنسول باید هر دامنه را جدا ثبت کنی:

  1. وارد Google Search Console شو

  2. گزینه Add property را بزن

  3. هر ساب‌دامین را به‌صورت کامل اضافه کن (مثلاً https://shop.example.com)

  4. سپس در بخش Sitemaps، آدرس مربوطه را بده.

❗ گوگل اجازه نمی‌دهد Sitemap یک ساب‌دامین را در دامنه دیگر معرفی کنی.
یعنی نمی‌توانی Sitemap: https://shop.example.com/sitemap.xml را در example.com/robots.txt بنویسی
مگر اینکه از DNS Domain-level property استفاده کرده باشی.

 اگر می‌خواهی همه زیر دامنه‌ها را با هم مدیریت کنی

می‌توانی از ویژگی جدید سرچ کنسول استفاده کنی:
Domain Property

  • با ثبت دامنه در این حالت (بدون ساب‌دامین)، گوگل همه‌ی زیر دامنه‌ها را به‌صورت خودکار شناسایی می‌کند.

  • فقط باید در DNS رکورد TXT اضافه کنی تا مالکیت را تأیید کند.

سپس می‌توانی همه Sitemapهای زیر دامنه‌ها را در بخش مرکزی ببینی.

 ساخت Sitemap مادر (اختیاری برای مدیریت مرکزی)

اگر می‌خواهی گوگل از یک نقطه مرکزی به همه Sitemapها دسترسی داشته باشد،
می‌توانی یک فایل مرکزی در دامنه اصلی بسازی:

https://example.com/sitemaps-all.xml

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://example.com/sitemap_index.xml</loc>
</sitemap>
<sitemap>
<loc>https://shop.example.com/sitemap_index.xml</loc>
</sitemap>
<sitemap>
<loc>https://blog.example.com/sitemap_index.xml</loc>
</sitemap>
<sitemap>
<loc>https://support.example.com/sitemap.xml</loc>
</sitemap>
</sitemapindex>

⚠️ توجه: این روش برای راحتی مدیریت خوبه،
اما همچنان هر ساب‌دامین باید Sitemap خودش را در سرچ کنسول خودش معرفی کرده باشد.

روش ادغام Sitemap چندزبانه در یک فایل مرکزی

 هدف از این کار

وقتی سایت چند نسخه زبانی روی زیردامنه یا زیرفولدر داره (مثل fa.example.com یا example.com/en/
می‌تونی به‌جای داشتن چند Sitemap جدا و پراکنده، یک فایل مرکزی بسازی که همه‌شون رو با ساختار استاندارد XML به گوگل معرفی کنه.

این روش:
 ایندکس سریع‌تر نسخه‌های زبانی
 مدیریت ساده‌تر و یکپارچه‌تر
 درک بهتر ارتباط نسخه‌های زبانی توسط گوگل (از طریق hreflang)
 جلوگیری از اشتباهات crawl بین زبان‌ها

ساختار کلی سایت چندزبانه

فرض کنیم سایتت در سه زبان فارسی، انگلیسی و عربی فعالیت داره و هر زبان روی یک زیردامنه (subdomain) جداگانه قرار گرفته.

۱. نسخه فارسی – https://fa.example.com
نوع ساختار: Subdomain
محتوا: صفحات خدمات، بلاگ فارسی، و محتوای محلی‌سازی‌شده برای کاربران فارسی‌زبان.
نکته: در این نسخه باید فایل‌های robots.txt و sitemap-fa.xml مخصوص زبان فارسی قرار بگیره و درونش فقط URLهای فارسی سایت ثبت بشن.

۲. نسخه انگلیسی – https://en.example.com
نوع ساختار: Subdomain
محتوا: نسخه بین‌المللی سایت شامل صفحات خدمات، محصولات و بلاگ انگلیسی.
نکته: sitemap جداگانه با مسیر sitemap-en.xml ساخته بشه و تگ‌های hreflang در صفحات به نسخه فارسی و عربی اشاره کنن.

۳. نسخه عربی – https://ar.example.com
نوع ساختار: Subdomain
محتوا: محتوای عربی برای کاربران خاورمیانه یا کشورهای عرب‌زبان.
نکته: فایل sitemap-ar.xml برای این زبان ساخته بشه و مثل بقیه زبان‌ها در فایل مرکزی دامنه اصلی معرفی بشه.

 نکته تکمیلی برای هماهنگی سئو چندزبانه:

  • هر زبان باید robots.txt و sitemap مستقل داشته باشه.

  • در دامنه اصلی (https://example.com) می‌تونی یک فایل مرکزی مثل sitemap-index.xml ایجاد کنی که مسیر تمام sitemapهای زبانی رو در خودش لیست کنه.

  • حتماً از تگ hreflang برای ارتباط بین زبان‌ها در هر صفحه استفاده کن تا گوگل بفهمه نسخه معادل هر زبان کجاست.

هرکدوم Sitemap خودش رو داره:

https://fa.example.com/sitemap_index.xml

https://en.example.com/sitemap_index.xml

https://ar.example.com/sitemap_index.xml

 مرحله ۱: ایجاد Sitemap مرکزی در دامنه اصلی

در دامنه اصلی (مثلاً https://example.com/sitemaps-all.xml) یک فایل مرکزی بساز.

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://fa.example.com/sitemap_index.xml</loc>
<lastmod>2025-11-02</lastmod>
</sitemap>
<sitemap>
<loc>https://en.example.com/sitemap_index.xml</loc>
<lastmod>2025-11-02</lastmod>
</sitemap>
<sitemap>
<loc>https://ar.example.com/sitemap_index.xml</loc>
<lastmod>2025-11-02</lastmod>
</sitemap>
</sitemapindex>

توضیح مورچه‌ای:

  • این فایل مرکزی در واقع نقشه مادر همه زبان‌هاست.

  • گوگل با دیدن این Sitemap مادر، می‌فهمه سایت چندزبانست و نسخه‌ها مستقل اما مرتبط‌اند.

  • lastmod کمک می‌کنه تغییرات نسخه‌ها سریع‌تر شناسایی بشن.

 مرحله ۲: معرفی Sitemap مرکزی به گوگل

حالا دو انتخاب داری:

 روش ۱: اگر از Domain Property در سرچ کنسول استفاده می‌کنی

فقط کافیه https://example.com/sitemaps-all.xml رو در سرچ کنسول اضافه کنی.
گوگل خودش تمام ساب‌دامین‌ها و Sitemapهای درونش رو می‌خونه و ایندکس می‌کنه.

 روش ۲: اگر هر زبان Property جداگانه دارد

باید هر Sitemap زبان رو جداگانه در سرچ کنسول مخصوص خودش معرفی کنی.
اما باز هم داشتن فایل مرکزی مزیت دارد؛ چون گوگل می‌تواند از مسیر دامنه اصلی، تمام نقشه‌ها را یکجا پیدا کند.

 مرحله ۳: هماهنگی hreflang در صفحات

برای کمک به گوگل در درک ارتباط زبان‌ها، داخل هر صفحه از تگ‌های hreflang استفاده کن:

<link rel="alternate" href="https://fa.example.com/مقاله-سئو" hreflang="fa" />
<link rel="alternate" href="https://en.example.com/seo-article" hreflang="en" />
<link rel="alternate" href="https://ar.example.com/مقالة-السيو" hreflang="ar" />
<link rel="alternate" href="https://fa.example.com/مقاله-سئو" hreflang="x-default" />

این تگ‌ها باعث می‌شن گوگل بدونه نسخه‌های مختلف یک محتوا برای زبان‌ها یا مناطق مختلفن و نباید به‌عنوان محتوای تکراری در نظرشون بگیره.

 مرحله ۴: افزودن لینک Sitemap مرکزی به robots.txt

در فایل robots.txt دامنه اصلی بنویس:

User-agent: *
Disallow:
Sitemap: https://example.com/sitemaps-all.xml

و در هر Subdomain هم Sitemap مخصوص خودش رو معرفی کن:

مثلاً در fa.example.com/robots.txt:

User-agent: *
Sitemap: https://fa.example.com/sitemap_index.xml

 مرحله ۵: بررسی و تست

  • از ابزار URL Inspection در سرچ کنسول استفاده کن تا مطمئن شی هر نسخه زبانی قابل ایندکس هست.

  • اگر از hreflang Tags Testing Tool استفاده کنی، می‌تونی روابط زبانی رو تست و خطاها رو رفع کنی.

  • گزارش Coverage هر زبان رو جدا بررسی کن تا Crawl Budget بین زبان‌ها درست تقسیم شده باشه.

 نکات طلایی مورچه‌ای برای Sitemap چندزبانه

فایل مرکزی فقط نقشه‌ی زبان‌هاست، نه لیست URLها.
هر زبان Sitemap مخصوص خودش رو داشته باشه.
حتماً hreflangها در صفحات و XML Sitemapها هم هماهنگ باشن.
دامنه اصلی فقط مسیرها رو معرفی کنه، خودش URL نداشته باشه مگر زبان پیش‌فرض.
بروزرسانی‌ها باید هم‌زمان بین زبان‌ها انجام بشن تا تاریخ lastmod هماهنگ بمونه.

معرفی ابزارهای حرفه‌ای برای تحلیل و بهینه‌سازی robots.txt و sitemap

فایل‌های robots.txt و sitemap مثل «نقشه‌ی عصبی» و «سیستم عصبی حرکتی» سایت هستن — باید دقیق، هماهنگ و بدون خطا کار کنن.
برای این کار، ابزارهای حرفه‌ای وجود دارن که می‌تونن وضعیت Crawl، خطاهای دسترسی، یا ناسازگاری‌های بین این دو فایل رو شناسایی کنن.

ابزارهایی که معمولاً متخصصان سئو برای این بخش استفاده می‌کنن شامل موارد زیره:

۱. بررسی هم‌زمان هماهنگی دو فایل:
گاهی در robots.txt مسیر /sitemap.xml بلاک می‌شه یا مسیر اشتباهی به گوگل معرفی می‌کنی. ابزارهایی مثل Screaming Frog یا Sitebulb می‌تونن تضاد بین Allow/Disallow و مسیرهای سایت‌مپ رو نشون بدن.

۲. Crawl simulation یا شبیه‌سازی خزش:
با استفاده از حالت Spider Mode در Screaming Frog می‌تونی دقیق ببینی ربات گوگل کدوم URLها رو می‌تونه بخونه یا نه — این یکی از تست‌های پیشرفته برای پروژه‌های بزرگه.

۳. Validation خودکار با API:
ابزارهایی مثل XML Sitemap Validator یا حتی اسکریپت‌های اختصاصی می‌تونن به‌صورت خودکار بعد از هر آپدیت، اعتبار فایل‌های XML رو چک کنن (برای سایت‌های خبری و فروشگاهی خیلی مفیده).

۴. داده‌های Search Console در اولویت‌اند:
اگر Search Console نشون بده فایل Sitemap ایندکس نشده یا بخشی از اون نادیده گرفته شده، اون داده باید مبنای اصلاح باشه، چون تنها گوگل واقعاً می‌دونه چه چیزهایی رو پردازش کرده.

استفاده از Screaming Frog برای شناسایی خطاهای Sitemap

Screaming Frog یکی از دقیق‌ترین ابزارها برای تحلیل فنی ساختار Crawl سایت است.
این نرم‌افزار می‌تونه Sitemap سایتت رو بخونه، با URLهای واقعی مقایسه کنه و خطاها یا ناسازگاری‌ها رو گزارش بده.

مراحل کار حرفه‌ای:

  1. وارد کردن Sitemap
    از منوی بالا، گزینه‌ی:
    Mode > List > Upload Sitemap
    سپس آدرس فایل XML رو بده (مثلاً https://seoant.ir/sitemap_index.xml).

  2. Crawl و مقایسه با سایت واقعی
    بعد از Crawl کامل، Screaming Frog لیست URLهایی رو که در Sitemap هستن ولی در سایت پیدا نمی‌شن (۴۰۴ یا ۳۰۱) نمایش می‌ده.

  3. یافتن URLهای بدون Sitemap
    با فیلتر «Not in Sitemap»، می‌تونی صفحاتی رو پیدا کنی که در سایت وجود دارن اما در sitemap.xml درج نشدن — و این یعنی گوگل ممکنه اون صفحات رو نادیده بگیره.

  4. گزارش نهایی
    از منوی Reports > Sitemap خروجی CSV بگیر تا برای تیم فنی یا وردپرس‌کار ارسالش کنی.

 مزیت اصلی:

Screaming Frog به‌صورت زنده با robots.txt هماهنگ می‌شه و مسیرهای بلاک‌شده رو در Crawl لحاظ می‌کنه، بنابراین گزارشش واقعاً وضعیت ایندکس واقعی گوگل رو شبیه‌سازی می‌کنه.

تحلیل robots.txt با Sitebulb و Ahrefs

 Sitebulb

Sitebulb یکی از بهترین ابزارهای بصری برای تحلیل فنی سئو است. وقتی سایتت رو Crawl می‌کنه، علاوه بر بررسی ساختار لینک‌ها، می‌ره سراغ robots.txt و:

  • مسیرهای Block شده رو به تفکیک گزارش می‌ده

  • نشون می‌ده چند URL در مسیرهای بلاک‌شده لینک ورودی دارن

  • و پیشنهاد می‌ده کدوم مسیرها باید آزاد یا بازنویسی بشن

 در گزارش “Crawler Access” می‌تونی ببینی:

  • کدوم پوشه‌ها (/wp-content/, /search/, /tag/) مانع Crawl هستن

  • چند صفحه مهم در این مسیرها قرار دارن

 نتیجه: Sitebulb کمک می‌کنه robots.txt رو نه فقط از دید syntax، بلکه از دید استراتژی Crawl Budget بهینه‌سازی کنی.

 Ahrefs

Ahrefs هم در بخش Site Audit → Crawlability → Robots.txt مسیرهایی که مانع Crawl شدن رو تحلیل می‌کنه.
در گزارش Ahrefs می‌تونی ببینی:

  • چند URL مهم (مثلاً صفحات محصول یا مقاله) توسط robots.txt مسدود شدن

  • کدوم مسیرها بیشترین خطای “Blocked by robots.txt” رو دارن

  • و چه صفحاتی با noindex یا canonical اشتباه هم‌زمان تنظیم شدن

 ترکیب Ahrefs با داده‌های بک‌لینک خودش باعث می‌شه بفهمی آیا لینکی که از سایت خارجی گرفتی داره به صفحه‌ای می‌ره که اصلاً Crawl نمی‌شه!

چطور گزارش خطاهای “Blocked by robots.txt” را در سرچ کنسول بررسی کنیم

در Search Console بخش Indexing → Pages → Why pages aren’t indexed رو باز کن.
در این قسمت معمولاً چند نوع خطا می‌بینی، که یکی از مهم‌ترینش:

“Page is blocked by robots.txt”

 با کلیک روی این پیام، گوگل لیست صفحاتی که توسط robots.txt مسدود شدن رو نشون می‌ده.
این بخش رو باید مثل اتاق کنترل Crawl ببینی.

راهکار مورچه‌ای  برای رفعش:

  1. بررسی کن آیا اون مسیر باید واقعاً بلاک باشه یا نه

  2. اگر نباید بلاک باشه، دستور مربوطه رو از robots.txt حذف کن

  3. فایل رو مجدداً در سرچ کنسول Validate Fix کن

  4. پس از تأیید، با ابزار “URL Inspection” تست Live انجام بده

 تأثیر:
در اغلب سایت‌ها، رفع چند مسیر اشتباه در robots.txt باعث رشد ۵۰ تا ۱۰۰٪ در Crawl rate طی دو هفته می‌شه.

نکات امنیتی: جلوگیری از افشای مسیرهای حساس در robots.txt

یکی از اشتباهات رایج مدیران سایت‌ها اینه که مسیرهای حساس مثل /admin/ یا /private/ رو در robots.txt می‌نویسن.
مشکل اینه که هر کسی (حتی هکرها) می‌تونن robots.txt رو باز کنن و بفهمن بخش‌های مخفی سایت کجاست

 اشتباه رایج:

User-agent: *
Disallow: /admin/
Disallow: /backup/
Disallow: /beta/

در ظاهر خوبه، ولی داری به بقیه می‌گی مسیرهای مهم کجاست!

 روش درست:

  • مسیرهای حساس رو با احراز هویت سرور (HTTP Auth) محافظت کن

  • یا از فایل .htaccess برای بلاک مستقیم استفاده کن

  • مسیرهایی که نباید دیده بشن رو در robots.txt ننویس، بلکه با noindex یا محدودیت دسترسی واقعی پنهان کن

 robots.txt ابزار امنیتی نیست، بلکه فقط دستور برای ربات‌هاست.
پس هیچ‌وقت برای پنهان‌کردن مسیرهای مهم ازش استفاده نکن.

خطاهای رایج و نحوه رفع آن‌ها

فایل‌های robots.txt و sitemap.xml مثل قلب خزیدن گوگل توی سایت هستن؛
هر اشتباه کوچیکی در اون‌ها می‌تونه باعث بشه صدها صفحه از ایندکس خارج بشن یا اصلاً دیده نشن.
در این بخش، خطاهای رایج سرچ کنسول و روش رفع هرکدوم رو دقیق بررسی می‌کنیم.

خطای “Submitted URL blocked by robots.txt”

توضیح:
گوگل متوجه شده URLی که در Sitemap معرفی شده، در robots.txt بلاک شده.
یعنی از یک طرف داری بهش می‌گی “برو بخونش”، از طرف دیگه “اجازه نداری بخونی!” 😅

نمونه:
در Sitemap نوشتی:

https://example.com/blog/seo-tips/

اما در robots.txt داری:

Disallow: /blog/

نتیجه:
گوگل نمی‌تونه صفحه رو Crawl کنه، پس ایندکس نمی‌شه.

راه‌حل:

  1. بررسی کن آیا صفحه باید ایندکس بشه یا نه.

  2. اگر باید ایندکس بشه → مسیر مربوطه رو از robots.txt حذف کن.

  3. اگر نباید ایندکس بشه → اون URL رو از sitemap.xml هم حذف کن.

  4. سپس در سرچ کنسول گزینه Validate Fix رو بزن تا Crawl مجدد انجام بشه.

 نکته:
برای سایت‌های وردپرسی، بعضی افزونه‌ها مثل Rank Math یا Yoast گاهی به‌صورت خودکار مسیرهای taxonomy مثل /tag/ رو در Sitemap اضافه می‌کنن؛ حتماً بررسی کن اون‌ها با robots.txt در تضاد نباشن.

 خطای “Sitemap can’t be read”

توضیح:
گوگل نمی‌تونه فایل Sitemap رو بخونه یا خطای syntax در اون وجود داره.

علت‌های رایج:

  • فایل در مسیر اشتباه قرار گرفته (/public_html/ نیست)

  • فرمت XML اشتباه یا تگ‌ها ناقصن

  • URLها ناقص یا با http به‌جای https نوشته شدن

  • فایل خیلی حجیم‌تر از ۵۰ مگابایته

راه‌حل مرحله‌به‌مرحله:

  1. باز کن آدرس sitemap در مرورگر (باید بدون خطا لود بشه).

  2. از ابزار XML Sitemap Validator برای بررسی ساختار استفاده کن.

  3. اگر در Sitemap Index از چند فایل استفاده کردی، مطمئن شو همه‌ی مسیرها فعال و در دسترس هستن.

  4. آدرس رو دوباره در Search Console ارسال کن و وضعیت “Success” رو چک کن.

 نکته حرفه‌ای:
گاهی قالب‌ها یا افزونه‌های امنیتی (مثل Wordfence) دسترسی ربات‌ها به sitemap.xml رو می‌بندن.
در این حالت باید در تنظیمات امنیتی استثنا (exception) برای sitemap.xml ایجاد کنی.

 خطای “URL not in property” و راه‌حل آن

توضیح:
این خطا یعنی URLی که در Sitemap هست، متعلق به دامنه یا property فعلی سرچ کنسول نیست.

مثلاً:
در سرچ کنسول دامنه‌ی https://seoant.ir ثبت شده،
ولی در Sitemap نوشتی:

https://www.seoant.ir/

یا:

http://seoant.ir/

نتیجه: گوگل نمی‌تونه اون URLها رو تأیید کنه.

راه‌حل:

  1. بررسی کن آیا سرچ کنسولت از نوع Domain Property هست یا URL Prefix.

  2. اگر URL Prefix داری، نسخه‌ی دقیق دامنه (با www یا بدون www) باید در Sitemap باشه.

  3. برای رفع دائم این مشکل، پیشنهاد می‌شه Domain Property بسازی که شامل همه‌ی نسخه‌ها باشه.

  4. سپس Sitemap رو با آدرس درست دوباره ارسال کن.

 نکته:
برای وردپرس، در تنظیمات عمومی سایت، هر دو فیلد
WordPress Address (URL) و Site Address (URL)
رو چک کن تا با نسخه‌ی ثبت‌شده در سرچ کنسول یکی باشن.

 رفع ناسازگاری میان sitemap و robots.txt

یکی از متداول‌ترین خطاهای پنهان در سئو فنی، ناهماهنگی این دو فایل است.
اگر robots.txt مسیر یک بخش را مسدود کند ولی sitemap برای همان بخش URL ثبت کند، گوگل سردرگم می‌شود.

نمونه ناسازگار:

# robots.txt
Disallow: /category/
Sitemap: https://example.com/sitemap_index.xml

در حالی که sitemap حاوی URLهایی از مسیر /category/ است.

روش رفع:

  1. ابتدا Sitemap را باز کن و مسیرهای تکراری یا بلاک‌شده را حذف کن.

  2. سپس robots.txt را به‌روز کن تا با ساختار sitemap هم‌خوان باشد.

  3. هر دو فایل را در سرچ کنسول Revalidate کن.

  4. برای اطمینان، از ابزار Screaming Frog استفاده کن تا مسیرهای Disallow و Sitemap را تطبیق دهد.

 نکته پیشرفته:
در سایت‌های بزرگ، گاهی لازم است برای هر بخش (Blog، Shop، News) sitemap جدا و robots جداگانه در زیر دامنه‌ها تعریف شود. در این حالت مسیرها باید در سطح همان زیر دامنه هماهنگ باشند.

 روش‌های مانیتورینگ ایندکس صفحات پس از بهینه‌سازی

بعد از رفع خطاها، مهم‌ترین مرحله مانیتورینگ مداوم است.
هدف این است که بفهمی آیا تغییرات واقعاً باعث بهبود Crawl و ایندکس شده یا نه.

روش‌های مطمئن برای مانیتورینگ:

  1. Search Console → Indexing → Pages
    رشد صفحات “Indexed” در نمودار را دنبال کن. اگر طی ۷ تا ۱۴ روز افزایش پیدا کرد، یعنی بهبود مؤثر بوده.

  2. Log File Analysis (تحلیل لاگ سرور)
    بررسی کن ربات Googlebot چندبار در روز به sitemap یا صفحات جدید سر زده. ابزارهایی مثل Screaming Frog Log File Analyzer برای این کار عالی‌اند.

  3. سرویس‌های مانیتور Crawl (مانند JetOctopus یا ContentKing)
    این ابزارها به‌صورت ۲۴ ساعته وضعیت ایندکس و Crawl را مانیتور می‌کنند و اگر خطایی در sitemap یا robots ظاهر شود، هشدار می‌دهند.

  4. بررسی دستی با دستور site:
    در گوگل سرچ کن:

    site:seoant.ir "عنوان مقاله"

    اگر مقاله در نتایج ظاهر شد، یعنی ایندکس انجام شده.

 پیشنهاد مورچه‌ای 
یه تقویم ماهانه برای بررسی فایل‌های کنترلی تنظیم کن.
هر ماه یک‌بار robots.txt و sitemap.xml رو مرور کن تا هیچ مسیر قدیمی یا لینک حذف‌شده در اون باقی نمونده باشه.

بهینه‌سازی برای آینده : استانداردهای جدید گوگل در ۲۰۲۵

گوگل در سال ۲۰۲۵ روی Crawl Smartness و AI Indexing تمرکز کرده؛ یعنی:

  • خزنده‌ها دیگه صرفاً مسیرها رو نمی‌خزن، بلکه هوشمندانه تصمیم می‌گیرن چه چیزی ارزش خزش داره.

  • سیستم جدید Googlebot از مدل‌های هوش مصنوعی مثل Gemini AI Crawler استفاده می‌کنه تا محتوای مشابه، کپی یا کم‌ارزش رو خودکار فیلتر کنه.

  • فایل‌های robots.txt و sitemap.xml حالا بیشتر از همیشه به عنوان راهنمای رفتار هوش مصنوعی گوگل عمل می‌کنن، نه فقط فیلتر دسترسی.

 بنابراین:

فایل‌های خزش باید ساده، منظم، بدون مسیر اضافی و دارای سیگنال قوی درباره ساختار سایت باشند.

ارتباط robots.txt با Core Web Vitals و Crawl Smartness

گوگل از سال ۲۰۲4 به بعد، crawl budget را متناسب با سرعت و کیفیت صفحات تنظیم می‌کند.

ارتباط robots.txt با Core Web Vitals و Crawl Smartness

از سال ۲۰۲۴ به بعد، گوگل مفهوم «Crawl Smartness» رو وارد الگوریتم‌های خزش خودش کرده؛ یعنی دیگه فقط بودجه‌ی خزش (Crawl Budget) به تعداد لینک‌ها یا دامنه بستگی نداره، بلکه به کیفیت و سرعت واقعی صفحات سایت هم وابسته است.

به زبان ساده، گوگل تصمیم می‌گیره چقدر انرژی و زمان صرف خزش در سایتت کنه — و این تصمیم کاملاً بر اساس کارایی و نظم ساختار سایتته.

سه عامل اصلی در این رابطه نقش حیاتی دارن:

  1. Core Web Vitals ضعیف:
    وقتی صفحات سایت کند، ناپایدار یا سنگین باشن (مثل CLS یا LCP بالا)، گوگل تمایلش برای خزش کاهش پیدا می‌کنه. در نتیجه، صفحات جدید یا به‌روزرسانی‌ها دیرتر ایندکس می‌شن.

  2. robots.txt تمیز و دقیق:
    یک فایل robots.txt شفاف و هدفمند باعث می‌شه گوگل فقط مسیرهای مهم رو بخزه و در صفحات غیرضروری (مثل /search، /tmp، یا /cart) وقت تلف نکنه.
    این یعنی بودجه‌ی خزش صرف بخش‌هایی می‌شه که ارزش ایندکس دارن — دقیقاً مثل اینکه مسیر حرکت مورچه‌ها رو با خط‌های روشن مشخص کنیم تا انرژی هدر نره.

  3. sitemap ساختاریافته و به‌روز:
    وقتی سایت‌مپ به‌صورت منظم و بخش‌بندی‌شده نوشته بشه، گوگل سریع‌تر صفحات تازه رو شناسایی می‌کنه.
    ترکیب یک sitemap تمیز با robots.txt دقیق، باعث می‌شه خزنده‌ها در مسیر بهینه حرکت کنن و Core Web Vitals سایت هم در نتیجه‌ی خزش سبک‌تر بهبود پیدا کنه.

 توصیه:

  • مسیرهای بی‌اهمیت را در robots.txt ببند (مثل /search, /wp-admin, /cgi-bin/).

  • صفحات مهم (دسته‌بندی‌ها، محصولات، نوشته‌ها) را در sitemap.xml لیست کن.

  • در نسخه جدید سرچ کنسول، Crawl Stats را مرتب بررسی کن تا رفتار جدید Googlebot را ببینی.

نقش هوش مصنوعی در تحلیل فایل‌های خزش

الگوریتم‌های هوش مصنوعی گوگل (Gemini + DeepRank) با خواندن robots.txt و sitemap:

  • الگوی انتشار محتوای سایت را تحلیل می‌کنند.

  • بخش‌های پرارزش‌تر را برای Crawl بیشتر انتخاب می‌کنند.

  • صفحات بی‌ارزش یا تکراری را از ایندکس موقت خارج می‌کنند.

 مثال:
اگر در sitemap.xml هر هفته ۵ مقاله جدید در یک مسیر درج شود، گوگل با هوش مصنوعی می‌فهمد آن بخش «فعال» است و Crawl Rate آن را بالا می‌برد.

مثال واقعی از تنظیمات حرفه‌ای

مثلاً سایت Yoast.com یا Ahrefs.com از الگوی زیر استفاده می‌کنند:

robots.txt

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://www.example.com/sitemap_index.xml

sitemap_index.xml

<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://www.example.com/sitemap-posts.xml</loc>
</sitemap>
<sitemap>
<loc>https://www.example.com/sitemap-pages.xml</loc>
</sitemap>
<sitemap>
<loc>https://www.example.com/sitemap-products.xml</loc>
</sitemap>
</sitemapindex>

ویژگی‌ها:

  • ساده و کاملاً سازگار با خزنده‌های هوشمند

  • sitemap اصلی شامل چند بخش موضوعی

  • هیچ مسیر غیرضروری یا تکراری در robots.txt

الگوی نهایی پیشنهادی (برای سایت‌های مدرن وردپرسی یا فروشگاهی در ۲۰۲۵)

robots.txt نهایی

User-agent: *
Disallow: /wp-admin/
Disallow: /cgi-bin/
Disallow: /search
Disallow: /*?s=
Allow: /wp-admin/admin-ajax.php
# Sitemap locations
Sitemap: https://www.yoursite.com/sitemap_index.xml
# AI-friendly hints
# Priority: Optimize crawl for main categories and products only
# Updated: 2025-11

sitemap_index.xml نهایی

<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://www.yoursite.com/sitemap-pages.xml</loc>
</sitemap>
<sitemap>
<loc>https://www.yoursite.com/sitemap-posts.xml</loc>
</sitemap>
<sitemap>
<loc>https://www.yoursite.com/sitemap-products.xml</loc>
</sitemap>
<sitemap>
<loc>https://www.yoursite.com/sitemap-images.xml</loc>
</sitemap>
</sitemapindex>

 مانیتورینگ و آینده‌نگری

در سال ۲۰۲۵ به بعد، گوگل از داده‌های هوش مصنوعی برای پیش‌بینی خزش استفاده می‌کند.
تو می‌تونی با ابزارهایی مثل:

  • Ahrefs Site Audit

  • Screaming Frog (AI Mode)

  • Sitebulb Smart Crawl Report
    رفتار خزنده‌ها رو دقیق‌تر بررسی کنی.

همچنین از قسمت:

Google Search Console → Crawl Stats Report
بفهمی کدام بخش‌ها بیشترین خزش را دارند.

جمع‌بندی نهایی: چک‌لیست طلایی سئو تکنیکال

robots.txt و sitemap.xml دو ستون اصلی ارتباط سایت با خزنده‌های گوگل هستن.
اگر درست تنظیم بشن، باعث افزایش سرعت ایندکس، بهینه‌سازی Crawl Budget و حذف صفحات بی‌ارزش از نتایج می‌شن.

 چک‌لیست نهایی بررسی فایل‌ها

 بخش robots.txt

۱. مسیر ذخیره فایل
فایل باید دقیقاً در ریشه اصلی دامنه قرار بگیرد.
نمونه درست:
https://domain.com/robots.txt
اگر در پوشه یا زیردامنه ذخیره شود، گوگل آن را تشخیص نمی‌دهد.

۲. تعریف User-agent
برای کنترل همه خزنده‌ها از دستور زیر استفاده کن:
User-agent: *
این یعنی قوانین فایل برای تمام ربات‌ها اعمال می‌شود، مگر اینکه برای مورد خاصی تنظیم جداگانه بنویسی.

۳. جلوگیری از مسیرهای غیرضروری
مسیرهایی که برای کاربران ارزش محتوایی ندارند نباید ایندکس شوند.
مثلاً:

Disallow: /wp-admin/
Disallow: /search
Disallow: /cgi-bin/

این کار باعث می‌شود بودجه خزش سایت بهتر مدیریت شود و گوگل روی صفحات مهم تمرکز کند.

۴. اجازه به فایل‌های ضروری
بعضی مسیرها باید در دسترس بمانند تا بخش‌های داینامیک درست کار کنند، مثل ajax وردپرس:
Allow: /wp-admin/admin-ajax.php

۵. لینک مستقیم به Sitemap
حتماً لینک نقشه سایت را در انتهای فایل اضافه کن:
Sitemap: https://domain.com/sitemap_index.xml
این کار باعث می‌شود ربات‌ها سریع‌تر مسیر خزش را پیدا کنند و صفحات مهم زودتر ایندکس شوند.

۶. بررسی خطاها
در پایان، فایل را با ابزار رسمی گوگل بررسی کن:
Google Search Console → robots.txt Tester
اگر خطایی مثل syntax اشتباه یا مسیر نادرست وجود داشته باشد، گوگل دقیقاً نشان می‌دهد.

نکته مهم:
اگر سایتت چندزبانه یا چندساب‌دامینه است (مثل shop.domain.com یا fa.domain.com
برای هرکدام باید فایل robots.txt جدا بسازی و درونش لینک sitemap مربوط به همان دامنه را قرار دهی.

چک‌لیست مورچه‌ای برای فایل sitemap.xml

  • محل فایل:
    فایل باید در مسیر اصلی سایت قرار بگیرد، معمولاً با آدرس /sitemap_index.xml.
    این موقعیت باعث می‌شود گوگل و سایر موتورهای جستجو بتوانند آن را سریع و راحت شناسایی کنند.

  • نوع نقشه:
    بهتر است از نوع Index Sitemap استفاده شود؛ یعنی فایلی که خودش شامل چند نقشه‌ی کوچک‌تر (برای محصولات، مقالات، دسته‌ها و غیره) است. این روش مخصوص سایت‌های متوسط و بزرگ است.

  • حداکثر URL در هر نقشه:
    هر فایل سایت‌مپ نباید بیش از ۵۰ هزار آدرس یا ۵۰ مگابایت حجم داشته باشد. در صورت بیشتر بودن، باید آن را به چند بخش تقسیم کرد تا گوگل دچار خطا نشود.

  • به‌روزرسانی خودکار:
    افزونه‌های سئو مثل Yoast, Rank Math یا AIOSEO این قابلیت را دارند که با هر تغییر در سایت، فایل سایت‌مپ را به‌طور خودکار به‌روزرسانی کنند.

  • پوشش صفحات مهم:
    در سایت‌مپ فقط صفحات با ارزش سئو باید وجود داشته باشند:
    صفحات خدمات، محصولات، مقالات و سایر صفحات هدفمند. صفحات بی‌اهمیت یا موقتی بهتر است در سایت‌مپ نباشند.

  • عدم وجود خطای ۴۰۴ یا ریدایرکت:
    هیچ آدرس حذف‌شده یا تغییر مسیر داده‌شده نباید داخل فایل باشد.
    برای بررسی، می‌توان از ابزارهایی مثل Screaming Frog یا گزارش Coverage در سرچ کنسول استفاده کرد.

  • هماهنگی با robots.txt:
    در انتهای فایل robots.txt باید لینک سایت‌مپ درج شود، مثلاً:

    Sitemap: https://domain.ir/sitemap_index.xml

    این کار باعث می‌شود گوگل سریع‌تر فایل را پیدا کند.

  • عدم وجود صفحات noindex:
    صفحات دارای تگ noindex یا canonical نباید در سایت‌مپ باشند، چون باعث تضاد سیگنال‌های ایندکس می‌شود.

  • مدیریت Subdomain‌ها:
    اگر سایت چند زیر‌دامنه دارد، هرکدام باید سایت‌مپ اختصاصی و ثبت جداگانه در Google Search Console داشته باشند.

  • تاریخ به‌روزرسانی (lastmod):
    این فیلد باید دقیق و واقعی باشد تا گوگل بداند آخرین تغییر هر صفحه چه زمانی اتفاق افتاده است.

  • پروتکل و دامنه درست:
    در همه لینک‌ها باید از نسخه نهایی سایت استفاده شود (مثلاً https و بدون www، یا برعکس، هرکدام که اصلی است).

  • بررسی دوره‌ای:
    بهتر است هر ماه یک‌بار فایل سایت‌مپ را با ابزارهایی مثل Screaming Frog یا Sitebulb بررسی کنی تا از نبود خطا مطمئن شوی.

 نمونه آماده فایل‌های بهینه‌شده (نسخه ۲۰۲۵)

 robots.txt

User-agent: *
Disallow: /wp-admin/
Disallow: /search
Disallow: /*?s=
Allow: /wp-admin/admin-ajax.php
Sitemap: https://seoant.ir/sitemap_index.xml
# Updated: 2025-11
# Note: Crawl focus → main pages, articles, and service sections.

 sitemap_index.xml

<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://seoant.ir/sitemap-pages.xml</loc>
</sitemap>
<sitemap>
<loc>https://seoant.ir/sitemap-articles.xml</loc>
</sitemap>
<sitemap>
<loc>https://seoant.ir/sitemap-education.xml</loc>
</sitemap>
<sitemap>
<loc>https://seoant.ir/sitemap-images.xml</loc>
</sitemap>
</sitemapindex>

(در سایت‌های فروشگاهی می‌شه فایل product و category هم اضافه کرد.)

 نکات طلایی سئو تکنیکال

  1. هر بار که ساختار سایت تغییر می‌کنه (دسته‌بندی یا URLها)، فایل sitemap رو به‌روز کن.

  2. robots.txt باید کوتاه، شفاف و بدون توضیحات غیرضروری باشه.

  3. هرگز مسیرهای مهم (مثل /blog/ یا /service/) رو اشتباهی Disallow نکن.

  4. لینک sitemap همیشه باید در robots.txt و سرچ کنسول ثبت شده باشه.

  5. Crawl Stats Report رو ماهیانه چک کن تا مطمئن شی گوگل دقیق می‌خزه.

  6. از ابزارهای حرفه‌ای مثل Ahrefs Site Audit، Screaming Frog AI Mode یا Sitebulb برای تست دوره‌ای استفاده کن.

  7. سرعت لود و Core Web Vitals مستقیماً روی Crawl Budget اثر داره.

  8. از افزونه‌های سئو برای مدیریت خودکار تغییرات استفاده کن.

آیا فایل robots.txt و sitemap.xml سایتت استاندارد و هماهنگه؟
تیم سئو مورچه‌ای بررسی رایگان سئو تکنیکال رو برای صاحبان سایت‌های وردپرسی و فروشگاهی انجام می‌ده.

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

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