ساختار URL سئو-فرندلی؛ اصول و بهترین روشها
ساختار URL سئو-فرندلی؛ اصول و بهترین روشها
URL نشانی یک منبع و بخشی از معماری سایت است. آدرس خوب به کاربر نشان میدهد صفحه درباره چیست، برای تیم قابل مدیریت است و به موتور جستوجو امکان میدهد نسخهها و رابطه مسیرها را بهتر تشخیص دهد. «سئو-فرندلی» به معنای قراردادن همه کلمات کلیدی در آدرس نیست. کوتاهی، توصیف، ثبات، قابلیت خزش و جلوگیری از نسخههای تکراری مهمترند. تصمیم URL باید پیش از انتشار انبوه صفحات گرفته شود، زیرا تغییر بعدی به ریدایرکت، اصلاح لینک، sitemap و تحلیل نیاز دارد. گوگل ساختار ساده، واژههای قابل فهم و استفاده از خط تیره میان کلمات را توصیه میکند.
URL را برای انسان قابل فهم بنویسید
آدرس /services/ecommerce-design نسبت به /index.php?id=728&cat=4 موضوع را بهتر نشان میدهد. لازم نیست جمله کامل باشد؛ چند واژه دقیق کافی است. کلمات عمومی مانند page، item و data ارزش توصیفی کمی دارند. نام باید با محتوای پایدار صفحه هماهنگ باشد، نه کمپین کوتاهمدت. breadcrumb و عنوان بار اصلی توضیح را بر عهده دارند، پس URL را بیش از حد طولانی نکنید. اگر آدرس در پیام یا گزارش دیده شد، فرد باید بتواند مقصد تقریبی را حدس بزند. خوانایی همچنین خطا در مدیریت و لینکسازی را کاهش میدهد.
سلسلهمراتب را منطقی ولی کمعمق نگه دارید
پوشه میتواند نوع یا دسته محتوا را نشان دهد: /blog/seo/url-structure. با این حال عمق زیاد مانند /services/digital/web/design/company/basic اطلاعات تکراری میسازد و مهاجرت را دشوار میکند. ساختار URL لازم نیست دقیقاً مسیر منو یا محل فیزیکی فایل باشد. دستهای را در آدرس قرار دهید که احتمال تغییر کمی دارد. اگر محصول میان چند دسته است، یک URL اصلی مستقل میتواند پایدارتر باشد. معماری اطلاعات با لینک و breadcrumb نیز بیان میشود. هدف، تعادل میان زمینه کافی و مقاومت در برابر تغییر ساختار داخلی است.
از خط تیره برای جداسازی واژهها استفاده کنید
راهنمای رسمی گوگل خط تیره را بهجای underscore برای جداسازی مفاهیم پیشنهاد میکند. واژهها را به هم نچسبانید و از فاصله خام استفاده نکنید. حروف را با سیاست ثابت کوچک نگه دارید، زیرا URL از نظر استاندارد میتواند به بزرگی و کوچکی حساس باشد و برخی سرورها مسیرها را متفاوت میبینند. علائم رزروشده باید درست percent-encode شوند. چند خط تیره متوالی، جداکنندههای تزئینی و نمادهای غیرضروری را حذف کنید. یک slug تمیز برای اشتراک، تحلیل و مدیریت سادهتر است.
فارسی یا لاتین را بر اساس مخاطب و عملیات انتخاب کنید
گوگل استفاده از زبان مخاطب در URL را میپذیرد و URL غیرلاتین در انتقال بهشکل percent-encoded دیده میشود. slug فارسی برای کاربر فارسی روشن است، اما هنگام کپی ممکن است طولانی و ناخوانا شود و بعضی ابزارهای قدیمی مدیریت ضعیفی داشته باشند. لاتین آوانویسیشده در عملیات سادهتر است ولی ممکن است املای یکنواختی نداشته باشد. هیچکدام بهتنهایی تضمین رتبه نیست. یک سیاست ثابت شامل قواعد نیمفاصله، اعداد، واژه انگلیسی و تبدیل عنوان تعریف کنید. پس از انتشار برای تغییر سلیقهای زبان slug مهاجرت نکنید.
کلمه کلیدی را طبیعی و محدود استفاده کنید
یک یا دو مفهوم اصلی که موضوع را توصیف میکنند کافی است. آدرس /seo/keyword-research روشنتر از /seo/keyword-research-keywords-seo-best-keyword-tool است. تکرار کلمه اثر جادویی ندارد و اعتماد را کاهش میدهد. نام برند یا شهر را فقط وقتی بخشی واقعی از صفحه است اضافه کنید. stop wordها را میتوان در صورت حفظ خوانایی حذف کرد، اما قانون اجباری نیست. slug باید پس از تغییر کوچک title همچنان معتبر بماند. تمرکز اصلی محتوا و عنواناند؛ URL یک نشانه سبک و ابزار سازماندهی است.
تاریخ و پسوند فایل را فقط در صورت نیاز وارد کنید
سال و ماه در URL خبر یا آرشیو زمانی ممکن است معنا داشته باشد، اما برای راهنمای همیشهسبز هنگام بهروزرسانی قدیمی به نظر میرسد. تاریخ انتشار را میتوان در داده ساختاریافته و صفحه نمایش داد بدون اینکه در نشانی قفل شود. پسوندهایی مانند .html اغلب لازم نیستند و مهاجرت فناوری را سخت میکنند، هرچند وجودشان بهخودیخود مشکل سئو نیست. شناسه عددی برای یکتایی سامانه گاهی ضروری است؛ آن را کوتاه و همراه slug توصیفی نگه دارید. تصمیم باید با محدودیت CMS و برنامه بلندمدت هماهنگ باشد.
پارامترها را محدود و استاندارد کنید
پارامتر برای مرتبسازی، فیلتر، کمپین و نشست استفاده میشود. پارامترهایی که محتوا را تغییر نمیدهند مانند UTM نباید URL canonical تازه بسازند. شناسه نشست را در URL قرار ندهید، زیرا نسخههای فراوان و خطر افشای داده ایجاد میکند. ترتیب و نام پارامترها را ثابت، مقدارها را محدود و ترکیبهای بینهایت را کنترل کنید. گوگل استفاده از = برای کلید/مقدار و & برای جداسازی را توصیه میکند. اگر فیلتر صفحه ارزش جستوجویی مستقل دارد، URL قابل خزش، محتوای متمایز و canonical درست طراحی کنید؛ وگرنه جلوی تولید زباله URL را بگیرید.
fragment را برای محتوای اصلی مستقل به کار نبرید
بخش پس از # معمولاً به سرور ارسال نمیشود و گوگل استفاده از fragment برای تغییر محتوای اصلی را توصیه نمیکند. #section برای پرش به بخش همان صفحه مفید است، اما برنامهای که مسیرهای مستقل را فقط با hash میسازد ممکن است قابلیت خزش و اشتراک را پیچیده کند. در برنامه JavaScript برای صفحات واقعی از History API و URLهای قابل دریافت مستقیم استفاده کنید. هر مسیر باید در بارگذاری مستقیم، refresh و اشتراک همان محتوا را برگرداند. وضعیت 404 نیز باید واقعی باشد، نه اینکه همه مسیرها پوسته 200 یکسان دریافت کنند.
canonical و نسخههای تکراری را هماهنگ کنید
ممکن است یک محتوا از مسیرهای دارای پارامتر، حروف متفاوت یا پروتکل قدیمی در دسترس باشد. یک URL ترجیحی انتخاب کنید، لینک داخلی و sitemap را به آن بدهید و نسخههای غیرضروری را ریدایرکت کنید. rel=canonical برای نسخههای لازم ولی تکراری سیگنال مناسبی است و بهتر است در صفحه اصلی self-referential باشد. canonical متناقض در HTML، sitemap و hreflang گیجکننده است. robots.txt ابزار canonicalization نیست و noindex نیز برای ادغام سیگنال نسخههای داخلی انتخاب ترجیحی نیست. پاسخ سرور و پیوندها باید یک داستان واحد بگویند.
ریدایرکت را مستقیم و هدفمند اجرا کنید
وقتی URL تغییر دائمی دارد، 301 یا 308 را از قدیم به مرتبطترین مقصد جدید تنظیم کنید. همه صفحات حذفشده را به خانه نفرستید؛ اگر جایگزین ندارد 404 یا 410 درستتر است. زنجیره و حلقه ریدایرکت زمان و خطا را افزایش میدهد، پس هر آدرس قدیمی مستقیم به مقصد نهایی برود. لینک داخلی، canonical، hreflang و sitemap را نیز اصلاح کنید تا وابسته به ریدایرکت نمانند. نقشه نگاشت را پیش از مهاجرت بسازید و پس از انتشار با crawl، لاگ و Search Console کنترل کنید. ریدایرکتها را بهاندازه کافی حفظ کنید.
URL سایت چندزبانه را روشن تفکیک کنید
برای هر زبان URL مستقل لازم است. زیرپوشه /fa/ و /en/ برای بسیاری سایتها مدیریت سادهای دارد؛ زیردامنه یا دامنه کشوری نیز بر اساس بازار ممکن است مناسب باشد. زبان را فقط با کوکی و بدون تغییر URL عوض نکنید. hreflang باید نسخههای معادل و canonical همان زبان را معرفی کند. slug میتواند ترجمه شود تا برای مخاطب محلی روشن باشد. تغییر زبان کاربر را به معادل همان صفحه ببرد و اگر ترجمه وجود ندارد رفتار شفاف داشته باشد. URLها را با UTF-8 و percent encoding استاندارد مدیریت کنید.
فیلتر، صفحهبندی و جستوجوی داخلی را از ابتدا طراحی کنید
فروشگاه ممکن است از ترکیب رنگ، قیمت، برند و ترتیب میلیونها URL بسازد. مشخص کنید کدام ترکیب تقاضا و محتوای مستقل دارد و فقط همانها را بهعنوان landing page قابل ایندکس تقویت کنید. بقیه باید بدون ایجاد مسیرهای بینهایت برای خزنده کار کنند. جستوجوی داخلی معمولاً صفحه نتیجه پویا و کمارزش است و نباید جای دسته را بگیرد. صفحهبندی باید لینک قابل خزش داشته باشد و هر صفحه canonical خود باشد، نه اینکه همه به صفحه اول canonical شوند. تصمیم را بر اساس اندازه کاتالوگ و رفتار کاربر آزمایش کنید.
پیش از انتشار این چکلیست را اجرا کنید
- URL کوتاه، توصیفی و با خط تیره است.
- ساختار به دستهای پایدار وابسته است.
- نسخه اصلی در لینک، canonical و sitemap یکسان است.
- پارامتر و fragment بیدلیل تولید نمیشود.
- HTTP، www و حالت حروف به یک مقصد میرسند.
- ریدایرکت تغییرات مستقیم و مرتبط است.
- مسیر موبایل، زبان و بارگذاری مستقیم آزمایش شده است.
جمعبندی
URL سئو-فرندلی بیش از آنکه محل نمایش کلمه کلیدی باشد، قرارداد پایدار دسترسی به محتواست. واژههای قابل فهم، خط تیره، ساختار ساده و پارامتر محدود به انسان و خزنده کمک میکنند. canonical، ریدایرکت و لینکهای منسجم نیز نسخه اصلی را روشن نگه میدارند. بهترین زمان طراحی این قواعد پیش از راهاندازی CMS و فروشگاه است. اگر سایت فعال است، صرفاً برای زیبایی URL مهاجرت گسترده نکنید؛ منفعت را با هزینه و ریسک بسنجید و در صورت تغییر، نگاشت و پایش کامل داشته باشید.