
به اشتراک بگذارید

به اشتراک بگذارید
سئو | بلاگ وبداده
ساخت و بهینهسازی فایل robots.txt در وردپرس

# نمونه robots.txt پیشنهادی برای یک سایت وردپرسی استاندارد
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
# آدرس نقشه سایت را در انتها معرفی کنید
Sitemap: https://example.com/sitemap_index.xmlBash<?php
// افزودن یک خط به robots.txt مجازی وردپرس از طریق فیلتر رسمی robots_txt
add_filter( 'robots_txt', 'webdade_custom_robots', 10, 2 );
function webdade_custom_robots( $output, $public ) {
// اگر سایت روی حالت «خصوصی» باشد، خروجی پیشفرض را تغییر نده
if ( '0' === (string) $public ) {
return $output;
}
$output .= "Disallow: /?s=\n";
$output .= "Sitemap: " . home_url( '/sitemap_index.xml' ) . "\n";
return $output;
}PHP# نمونه پیشرفتهتر؛ فقط در صورت نیاز واقعی از خطوط اضافه استفاده کنید
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
# جلوگیری از خزش نتایج جستجوی داخلی سایت (محتوای کمارزش)
Disallow: /?s=
Disallow: /search/
# هرگز پوشههای شامل CSS و JS را نبندید تا رندر صفحه نشکند
# Disallow: /wp-includes/ <-- این خط را اضافه نکنید
Sitemap: https://example.com/sitemap_index.xmlBash| روش | سطح دشواری | نیاز به کدنویسی | پایداری در بهروزرسانی | مناسب چه کسی |
|---|---|---|---|---|
| افزونه سئو | آسان | خیر | بالا | اکثر کاربران و مبتدیها |
| فایل فیزیکی دستی | متوسط | خیر | بالا (مستقل از افزونه) | کسانی که افزونه سئو ندارند |
| فیلتر robots_txt | پیشرفته | بله | بسیار بالا | توسعهدهندگان |

بهصورت پیشفرض هیچ فایل فیزیکی وجود ندارد و وردپرس آن را مجازی و پویا میسازد؛ به همین دلیل در File Manager پیدایش نمیکنید. محتوای فعلی را میتوانید با باز کردن آدرس yoursite.com/robots.txt در مرورگر ببینید. بهمحض اینکه یک فایل فیزیکی در پوشه ریشه بسازید، آن فایل جایگزین نسخه مجازی میشود.
برای سایتهای کوچک حتماً ضروری نیست و نسخه پیشفرض وردپرس معمولاً کافی است. اما برای سایتهای بزرگتر، مدیریت درست آن به بهینهشدن بودجه خزش کمک میکند تا گوگل وقتش را روی صفحات مهم بگذارد، نه صفحات تکراری و کمارزش.
از ابزار آزمایش robots.txt در گوگل سرچ کنسول استفاده کنید. این ابزار به شما نشان میدهد گوگل خروجی فایل شما را چطور تفسیر میکند و آیا مسیر خاصی مسدود شده یا نه. بعد از هر تغییر مهم، یک بار تست کردن ارزشش را دارد.
دستور Disallow در robots.txt جلوی «خزش» یک مسیر را میگیرد، اما لزوماً جلوی نمایش آن در نتایج را نمیگیرد. تگ noindex به گوگل میگوید صفحه را «ایندکس نکن». اگر هدفتان حذف کامل از نتایج است، باید noindex را بهکار ببرید و آن صفحه را در robots.txt مسدود نکنید تا گوگل بتواند تگ noindex را ببیند.
گوگل برای رندر و فهم درست صفحه به فایلهای ظاهری (CSS و JavaScript) نیاز دارد. اگر پوشههایی مثل wp-includes یا منابع قالب را Disallow کنید، گوگل صفحه را ناقص میبیند و این میتواند به رتبه و تجربه موبایلی سایت آسیب بزند.
بله، با تعریف چند بلوک User-agent جداگانه میتوانید برای رباتهای مختلف قانون متفاوت بگذارید. اما به یاد داشته باشید این فقط برای رباتهای محترمی که قوانین را رعایت میکنند کار میکند؛ رباتهای مخرب به این تنظیمات اعتنا نمیکنند.
گوگل فایل robots.txt را بهصورت دورهای و معمولاً با کش حدود یک روزه میخواند. برای اعمال سریعتر تغییرات میتوانید از گزینه ارسال نسخه بهروز در سرچ کنسول استفاده کنید، اما در حالت عادی تغییرات طی چند ساعت تا یک روز شناسایی میشوند.
بله. طبق مستندات گوگل، حداکثر تا 500 کیبیبایت از این فایل خوانده میشود و هرچه بعد از این حجم باشد نادیده گرفته میشود. برای یک سایت معمولی این محدودیت هیچوقت دردسرساز نمیشود، اما نشان میدهد بهتر است فایل را کوتاه و تمیز نگه دارید.