سلام! امروز میخوام در مورد یه قهرمان پنهان در سئوی سایتت باهات صحبت کنم: بردکرامب (Breadcrumbs). شاید این اسم (به معنی «خردهنان»!) به نظرت ساده بیاد، اما این مسیر راهنمای کوچولو، هم برای کاربرهات و هم برای گوگل یه ابزار فوقالعاده قدرتمنده. فعالسازیش توی وردپرس خیلی راحته، مخصوصاً اگه از افزونه های حیاتی سئو مثل رنک مث یا یواست استفاده کنی.
اگه میخوای بدونی این مسیر راهنما چطور میتونه تجربه کاربری (UX) سایتت رو متحول کنه، نرخ پرش (Bounce Rate) رو کاهش بده و به گوگل کمک کنه ساختار سایتت رو بهتر بفهمه (و حتی در نتایج جستجو بدرخشه!)، تا آخر این راهنمای جامع با من همراه باش.
جدول کاربردی: مقایسه سریع روشهای فعالسازی Breadcrumbs
این جدول رو اول کار آوردم تا بتونی بر اساس سطح مهارت و نیازت، بهترین روش رو انتخاب کنی:
| روش فعالسازی بردکرامب | سطح دشواری | بهترین کاربرد |
| ۱. افزونههای سئو (مثل رنک مث) | ⭐ آسان | (روش پیشنهادی) بهترین و امنترین راه برای ۹۹٪ سایتهای وردپرسی. (اسکیمای خودکار) |
| ۲. تنظیمات پوسته (مثل Astra) | ⭐ آسان | عالی، به شرطی که منبع (Source) آن را روی افزونه سئو (مثل رنک مث) تنظیم کنی. |
| ۳. افزونه تخصصی (NavXT) | ⭐⭐ متوسط | برای سایتهای خیلی بزرگ و پیچیده با ساختارهای سفارشی که نیاز به انعطافپذیری بالا دارند. |
| ۴. کدنویسی دستی (functions.php) | ⭐⭐⭐⭐ سخت (حرفهای) | فقط برای توسعهدهندگان و متخصصان. ریسک بالایی دارد اما کنترل کامل به تو میدهد. |
Breadcrumbs (مسیر راهنما) چیست و چرا برای سایت وردپرسی شما ضروری است؟
تعریف Breadcrumbs: مسیریابی کاربر در سایت شما
خیلی ساده بهت بگم: Breadcrumbs (بردکرامب) یه ردیف از لینکهای کوچیکه که معمولاً بالای صفحه (زیر هدر یا عنوان) میبینی. این لینکها به کاربر نشون میدن که «الان دقیقاً کجای سایت» قرار داره و چطور به این صفحه رسیده.
مثلاً، اگه داری یه مقاله در مورد «لینکسازی» در دستهبندی «سئو»ی بلاگ ما میخونی، مسیر راهنما این شکلی میشه:
خانه > بلاگ > سئو > آموزش لینکسازی ۲۰۲۵
این دقیقاً مثل تابلوهای راهنما در یه فروشگاه بزرگه. به کاربر کمک میکنه گم نشه و اگه خواست، بهراحتی یه مرحله به عقب برگرده (مثلاً بره به همون دستهبندی «سئو» تا مقالههای دیگهای رو هم ببینه). این کار مستقیماً به کاربر کمک میکنه تا برای رسیدن به هدفش، راحتتر در سایتت بچرخه و در نهایت، یه تجربه رضایتبخش و مثبت براش میسازه.
تأثیر مستقیم بر سئو: چگونه Breadcrumbs به گوگل در درک ساختار سایت کمک میکند؟
اینجا بخش مورد علاقه منه! خیلیا فکر میکنن بردکرامب فقط برای کاربره، اما اصلاً اینطور نیست. گوگل عاشق بردکرامبه. چرا؟
- درک ساختار (Site Structure): بردکرامب به رباتهای گوگل کمک میکنه تا سلسلهمراتب و معماری سایتت رو خیلی شفاف بفهمن. گوگل بهوضوح میدونه که «آموزش لینکسازی» زیرمجموعه «سئو» و «سئو» زیرمجموعه «بلاگ» هست. این ارائه تحلیل عمیق از ساختار سایت، فراتر از لینکهای معمولی و بدیهی عمل میکنه.
- تقویت لینکسازی داخلی (Internal Linking): هر بخش از مسیر راهنمای تو (به جز صفحه فعلی) یه لینک داخلی حساب میشه. این کار به توزیع «اعتبار صفحه» (که قدیم بهش PageRank میگفتیم) در سراسر سایتت کمک میکنه و به صفحات مهمتر (مثل دستهبندیهای اصلی) قدرت بیشتری میده.
- کشف بهتر محتوا (Crawling): این لینکها مثل یه نقشه راه، به گوگل کمک میکنن تا صفحات عمیقتر سایتت رو راحتتر پیدا (Crawl) و ایندکس کنه.
بهبود تجربه کاربری (UX): کاهش نرخ پرش (Bounce Rate) با ناوبری آسان
بیا یه سناریو رو تصور کنیم: کاربر از طریق گوگل مستقیماً وارد یه صفحه محصول یا مقالهای در عمق سایتت میشه. اگه اون صفحه دقیقاً چیزی نباشه که میخواد، اولین واکنش چیه؟ زدن دکمه “Back” و خروج از سایت تو. این یعنی افزایش نرخ پرش (Bounce Rate).
اما… اگه بردکرامب داشته باشی، به کاربر یه راه نجات میدی. بهجای خروج کامل، میتونه روی دستهبندی بالاتر کلیک کنه (مثلاً برگرده به «کفشهای ورزشی مردانه») تا گزینههای بیشتری ببینه.
این یعنی:
- کاربر مدتزمان بیشتری در سایتت میمونه.
- صفحات بیشتری رو میبینه (Page Views).
- احساس سردرگمی نمیکنه و یه تجربه رضایتبخش داره.
- و مهمتر از همه، احساس نمیکنه که برای یافتن اطلاعات دقیقتر، نیازه دوباره به گوگل برگرده و جستجوی مجددی انجام بده.
نمایش مسیر راهنما در نتایج گوگل (Rich Snippets)
و اما، جذابترین بخش ماجرا! اگه بردکرامب رو درست پیادهسازی کنی (مخصوصاً با استفاده از نشانهگذاری اسکیما – Schema Markup)، گوگل میتونه اون مسیر راهنما رو مستقیماً در نتایج جستجو (SERP) به جای URL خشک و بیروح، نمایش بده.
ببین چقدر فرق میکنه:
- حالت عادی (URL): https://vazirseo.com/blog/category-seo/link-building-2025
- با بردکرامب (Rich Snippet): com > بلاگ > سئو > آموزش لینکسازی ۲۰۲۵
این کار دو تا مزیت فوقالعاده داره:
- ظاهر حرفهای و قابل اعتماد: این ساختار تمیز به کاربر فوراً نشون میده که این صفحه کجای یه سایت معتبر و سازمانیافته قرار داره و به محتوای تو حس اعتماد میده.
- افزایش نرخ کلیک (CTR): این لینکهای خوانا، جذابیت بصری بیشتری دارن و کاربر رو تشویق میکنن که روی لینک تو کلیک کنه، حتی اگه رتبهات یکی دو پله پایینتر باشه. این خودش یه ارزش افزوده عالی نسبت به نتایج دیگه است.
جمعبندی نهایی
پس میبینی؟ بردکرامب یه جزئیات کوچیک نیست. یه ابزار قدرتمند سه کاره است: هم به کابرهات کمک میکنه (UX)، هم به گوگل سیگنالهای مثبت میده (SEO) و هم در نتایج جستجو برات مزیت رقابتی ایجاد میکنه (CTR).
خوشبختانه توی وردپرس، اکثر افزونههای سئو (مثل یواست یا رنکمث) گزینههای خیلی سادهای برای فعال کردن و تنظیمش دارن. پس اصلاً در انجامش شک نکن!
آموزش گام به گام فعالسازی Breadcrumbs با افزونههای سئو (روش پیشنهادی)
روش اول: فعالسازی و تنظیم Breadcrumbs در افزونه Yoast SEO
اگه از افزونه محبوب Yoast SEO استفاده میکنی، کارت خیلی راحته. یواست تنظیمات دقیقی برای این کار داره:
- رفتن به تنظیمات: اول به پیشخوان وردپرست برو. از منوی کناری، روی «Yoast SEO» کلیک کن و بعد وارد بخش «تنظیمات» (Settings) شو.
- بخش پیشرفته: در صفحه تنظیمات، به تب «پیشرفته» (Advanced) برو و روی زیرمنوی «مسیر راهنما» (Breadcrumbs) کلیک کن.
- فعالسازی: اولین گزینه، «فعالسازی مسیر راهنما» (Enable Breadcrumbs) هست. این دکمه رو روشن کن.
- پیکربندی تنظیمات: حالا گزینههای زیرش برات باز میشه:
- جداکننده: میتونی مشخص کنی بین لینکها چه علامتی باشه (مثلاً > یا / یا «).
- متن لینک صفحه اصلی: مشخص کن لینک اول که به صفحه اصلی میره، چه اسمی داشته باشه (مثلاً: خانه، صفحه اصلی، یا اسم برندت).
- طبقهبندی (Taxonomy): مهمترین بخش! اینجا مشخص میکنی که برای «نوشتهها»، کدوم طبقهبندی توی مسیر نشون داده بشه. پیشنهاد قطعی من اینه که حتماً «دستهبندی» (Category) رو انتخاب کنی، نه «برچسب» (Tag). این کار به ساختار سایتت معنای بهتری میده.
- در نهایت تنظیمات رو ذخیره کن.
روش دوم: پیکربندی و تنظیم مسیر راهنما در افزونه Rank Math
رنک مث هم که رقیب جدی یواست هست، این کار رو عالی انجام میده. مسیرش کمی متفاوته:
- رفتن به تنظیمات: از پیشخوان وردپرس، برو به «Rank Math» و بعد «تنظیمات عمومی» (General Settings).
- بخش مسیر راهنما: در تنظیمات عمومی، روی تب «مسیر راهنما» (Breadcrumbs) کلیک کن.
- فعالسازی: اولین گزینه، «فعال کردن تابع مسیر راهنما» (Enable Breadcrumbs function) هست. این دکمه رو روشن کن تا تمام تنظیماتش برات باز بشه.
- پیکربندی تنظیمات: رنک مث گزینههای زیادی بهت میده:
- کاراکتر جداکننده: اینجا هم میتونی جداکننده دلخواهت رو انتخاب کنی.
- نمایش لینک صفحه اصلی: میتونی مشخص کنی که لینک «خانه» نمایش داده بشه یا نه و چه عنوانی داشته باشه.
- نمایش دستهبندیها: حتماً مطمئن شو که گزینه «نمایش دستهبندی(ها)» (Show Category(s)) روشنه تا ساختار بلاگت درست نمایش داده بشه.
- مخفی کردن عنوان نوشته: یه گزینه خوب اینه که میتونی عنوان خودِ نوشته فعلی رو از انتهای مسیر راهنما حذف کنی (چون معمولاً همون عنوان H1 صفحه است و تکرارش لازم نیست).
- تنظیمات رو که انجام دادی، حتماً «ذخیره تغییرات» رو بزن.
چگونه کد Breadcrumbs افزونه را به پوسته (Theme) خود اضافه کنیم؟
این یه نکته فوقالعاده مهمه! فعال کردن گزینه بردکرامب در افزونه (چه یواست و چه رنک مث) فقط «تابع» اون رو آماده میکنه. این کار لزوماً باعث نمایشش در سایت نمیشه.
برای نمایش، باید به پوستهات (Theme) بگی که این مسیر راهنما رو کجا نشون بده. دو راه اصلی داری:
راه اول: از طریق تنظیمات پوسته (روش ساده و امن)
خوشبختانه اکثر پوستههای مدرن و بهینه (مثل Astra, GeneratePress, Kadence, و…) با این افزونهها کاملاً هماهنگ هستن.
- به بخش «سفارشیسازی» (Customize) پوسته خودت برو.
- دنبال گزینهای به اسم «مسیر راهنما» یا «Breadcrumbs» بگرد (معمولاً در تنظیمات «بلاگ» یا «تنظیمات صفحه» هست).
- اونجا یه منو داره که ازت میپرسه میخوای از کدوم افزونه برای بردکرامب استفاده کنی. کافیه «Yoast» یا «Rank Math» رو انتخاب کنی.
- تمام! پوسته خودش کد رو در جای درست (معمولاً زیر هدر و بالای عنوان) قرار میده.
راه دوم: اضافه کردن دستی کد (برای پوستههای قدیمی یا سفارشی)
اگه پوستهات این گزینه رو نداشت، باید یه تیکه کد کوتاه PHP رو خودت به فایلهای پوستهات اضافه کنی.
- کد لازم برای Yoast SEO:
<?php
if ( function_exists(‘yoast_breadcrumb’) ) {
yoast_breadcrumb( ‘<p id=”breadcrumbs”>’,'</p>’ );
}
?>
- کد لازم برای Rank Math:
<?php
if ( function_exists(‘rank_math_the_breadcrumb’) ) {
rank_math_the_breadcrumb();
}
?>
کجا باید این کد رو بذاری؟
معمولاً بهترین جا، در فایل header.php پوستهات، درست قبل از بسته شدن تگ <header> یا در ابتدای فایلهای الگوی صفحه (مثل single.php برای نوشتهها و page.php برای برگهها) قبل از حلقه اصلی یا نمایش عنوان صفحه است.
هشدار مهم: دستکاری مستقیم فایلهای پوسته اصلی کار خطرناکیه. همیشه از پوسته فرزند (Child Theme) استفاده کن، وگرنه با هر آپدیت پوسته، تغییراتی که دادی از بین میره. اگه با این مفاهیم آشنا نیستی، حتماً از یه متخصص کمک بگیر یا از پوستههایی استفاده کن که راه اول رو پشتیبانی میکنن.
استفاده از افزونه تخصصی Breadcrumb NavXT برای تنظیمات پیشرفته
حالا اگه سایت خیلی بزرگ و پیچیدهای داری (مثلاً یه فروشگاه اینترنتی خیلی بزرگ با ساختارهای خاص یا یه سایت دایرکتوری) و تنظیمات یواست یا رنک مث برات کافی نیست، یه گزینه حرفهای هم روی میزه.
افزونه Breadcrumb NavXT بهطور تخصصی فقط برای ساختن بردکرامب طراحی شده.
- چرا از این استفاده کنیم؟ چون بهت کنترل فوقالعاده زیادی روی جزئیات مسیر راهنما میده. مثلاً میتونی الگوهای پیچیدهای برای انواع پستتایپهای سفارشی (Custom Post Types) تعریف کنی و دقیقاً مشخص کنی هر بخش از مسیر چطور ساخته بشه.
- چطور کار میکنه؟ بعد از نصب و فعالسازی، به بخش تنظیماتش (Settings > Breadcrumb NavXT) میری. اونجا میتونی برای هر نوع محتوا (نوشتهها، برگهها، محصولات، پستتایپهای سفارشی) یه «الگوی» مسیر تعریف کنی.
- نحوه نمایش: این افزونه هم مثل موارد قبلی، برای نمایش نیاز به اضافه کردن کد به پوسته داره (مگر اینکه پوستهات مستقیماً ازش پشتیبانی کنه). کد مخصوص این افزونه معمولاً این شکلیه:
<div class=”breadcrumbs” typeof=”BreadcrumbList” vocab=”https://schema.org/”>
<?php if(function_exists(‘bcn_display’)) { bcn_display(); } ?>
</div>
توصیه نهایی من: برای ۹۵٪ سایتهای وردپرسی، گزینههای داخلی Yoast SEO یا Rank Math (مخصوصاً رنک مث) کاملاً کافی، بهینه و عالی هستن. فقط در صورتی سراغ NavXT برو که واقعاً به انعطافپذیری خیلی خاصی نیاز داشته باشی.
روش دستی: اضافه کردن Breadcrumbs به وردپرس بدون افزونه (مخصوص کاربران حرفهای)
گام اول: افزودن تابع (Function) سفارشی Breadcrumbs به فایل functions.php
اولین قدم اینه که «موتور» بردکرامب خودمون رو بسازیم. ما باید یه تابع (Function) PHP بنویسیم که منطق نمایش مسیر راهنما رو مدیریت کنه.
این تابع باید هوشمند باشه و بفهمه که الان کجای سایته؟ آیا توی یه نوشته است؟ (پس باید دستهبندیش رو نشون بده). آیا توی یه برگه است؟ (پس باید برگه مادرش رو نشون بده). آیا توی صفحه آرشیو دستهبندیهاست؟ (پس باید سلسلهمراتب دستهها رو نشون بده).
کد زیر رو باید به فایل functions.php پوستهات اضافه کنی:
هشدار جدی: حتماً از پوسته فرزند (Child Theme) استفاده کن. اگه این کد رو مستقیماً در functions.php پوسته اصلی بذاری، بعد از اولین آپدیت پوسته، تمام کدهات پاک میشه!
function get_custom_breadcrumbs() {
// جداکننده بین لینکها
$separator = ‘ > ‘;
// لینک صفحه اصلی
$home_title = ‘خانه’;
// شروع ساختار HTML (خیلی مهمه که از تگ nav استفاده کنیم)
// ما اینجا از نشانهگذاری اسکیمای BreadcrumbList برای سئو استفاده میکنیم
echo ‘<nav class=”custom-breadcrumbs” aria-label=”breadcrumb”>’;
echo ‘<ol itemscope itemtype=”https://schema.org/BreadcrumbList”>’;
// 1. لینک صفحه اصلی (همیشه هست)
echo ‘<li itemprop=”itemListElement” itemscope itemtype=”https://schema.org/ListItem”>’;
echo ‘<a itemprop=”item” href=”‘ . get_home_url() . ‘”>’;
echo ‘<span itemprop=”name”>’ . $home_title . ‘</span></a>’;
echo ‘<meta itemprop=”position” content=”1″ />’;
echo ‘</li>’ . $separator;
$position = 2; // موقعیت شمارنده برای اسکیما
// 2. برای نوشتههای بلاگ (single.php)
if (is_single()) {
$cats = get_the_category();
if ($cats) {
$cat = $cats[0]; // فقط اولین دستهبندی رو میگیریم
// نمایش دستهبندی
echo ‘<li itemprop=”itemListElement” itemscope itemtype=”https://schema.org/ListItem”>’;
echo ‘<a itemprop=”item” href=”‘ . get_category_link($cat->term_id) . ‘”>’;
echo ‘<span itemprop=”name”>’ . $cat->name . ‘</span></a>’;
echo ‘<meta itemprop=”position” content=”‘ . $position . ‘” />’;
echo ‘</li>’ . $separator;
$position++;
}
// نمایش عنوان خود نوشته (بهعنوان آیتم آخر و غیرقابل کلیک)
echo ‘<li class=”current” itemprop=”itemListElement” itemscope itemtype=”https://schema.org/ListItem”>’;
echo ‘<span itemprop=”name”>’ . get_the_title() . ‘</span>’;
echo ‘<meta itemprop=”position” content=”‘ . $position . ‘” />’;
echo ‘</li>’;
}
// 3. برای صفحات دستهبندی (category.php)
elseif (is_category()) {
// نمایش عنوان دستهبندی (بهعنوان آیتم آخر و غیرقابل کلیک)
echo ‘<li class=”current” itemprop=”itemListElement” itemscope itemtype=”https://schema.org/ListItem”>’;
echo ‘<span itemprop=”name”>’ . single_cat_title(”, false) . ‘</span>’;
echo ‘<meta itemprop=”position” content=”‘ . $position . ‘” />’;
echo ‘</li>’;
}
// 4. برای برگهها (page.php)
elseif (is_page()) {
// اگر برگه، والد (Parent) داشت
global $post;
if ($post->post_parent) {
$parents = get_post_ancestors($post->ID);
$parents = array_reverse($parents); // برعکس کردن آرایه تا از بالا به پایین باشه
foreach ($parents as $parent_id) {
echo ‘<li itemprop=”itemListElement” itemscope itemtype=”https://schema.org/ListItem”>’;
echo ‘<a itemprop=”item” href=”‘ . get_permalink($parent_id) . ‘”>’;
echo ‘<span itemprop=”name”>’ . get_the_title($parent_id) . ‘</span></a>’;
echo ‘<meta itemprop=”position” content=”‘ . $position . ‘” />’;
echo ‘</li>’ . $separator;
$position++;
}
}
// نمایش عنوان خود برگه (بهعنوان آیتم آخر و غیرقابل کلیک)
echo ‘<li class=”current” itemprop=”itemListElement” itemscope itemtype=”https://schema.org/ListItem”>’;
echo ‘<span itemprop=”name”>’ . get_the_title() . ‘</span>’;
echo ‘<meta itemprop=”position” content=”‘ . $position . ‘” />’;
echo ‘</li>’;
}
// میتونی شرایط دیگهای مثل is_search(), is_404() و… رو هم به همین شکل اضافه کنی
// پایان ساختار HTML
echo ‘</ol>’;
echo ‘</nav>’;
}
?>
توجه: این یه کد نسبتاً پایهای هست. تو میتونی اون رو خیلی کاملتر کنی تا آرشیو برچسبها، نویسندگان، جستجو و… رو هم پشتیبانی کنه. نکته کلیدی، استفاده از itemscope, itemtype و itemprop برای پیادهسازی صحیح اسکیمای BreadcrumbList بود که گوگل بتونه اون رو درک کنه.
گام دوم: فراخوانی تابع و نمایش Breadcrumbs در فایلهای پوسته (مانند single.php و page.php)
حالا که تابع get_custom_breadcrumbs() رو در functions.php تعریف کردیم، باید به وردپرس بگیم که این تابع رو کجا اجرا و نمایش بده.
باید فایلهای الگوی پوسته (Template Files) خودت رو ویرایش کنی (باز هم تاکید میکنم، در پوسته فرزند):
- برای نوشتههای بلاگ: فایل php رو باز کن.
- برای برگههای سایت: فایل php رو باز کن.
- برای صفحات آرشیو (مثل دستهبندی): فایل php یا category.php رو باز کن.
در هر کدوم از این فایلها، بگرد دنبال جایی که میخوای بردکرامب نمایش داده بشه. بهترین جا معمولاً درست قبل از عنوان صفحه (یعنی قبل از the_title()) یا گاهی اوقات داخل هدر و قبل از تگ <main> یا <article> هست.
کد زیر رو در اون محل قرار بده:
<?php
if ( function_exists(‘get_custom_breadcrumbs’) ) {
get_custom_breadcrumbs();
}
?>
این کد ساده اول چک میکنه که آیا تابعی به این اسم اصلاً وجود داره (برای جلوگیری از خطا) و بعد اون رو فراخوانی میکنه تا کدهای HTML بردکرامب رو چاپ کنه.
هشدار: ریسکهای ویرایش مستقیم فایلهای پوسته و اهمیت بکاپگیری
خب، اینجا باید باهات خیلی جدی صحبت کنم. این کاری که توضیح دادم، مثل جراحی قلب باز برای سایتت میمونه. اگه تازهکار هستی یا دقیقاً نمیدونی داری چیکار میکنی، لطفاً انجامش نده.
ریسکها چی هستن؟
- صفحه سفید مرگ (White Screen of Death): اگه فقط یک نقطه ویرگول (;) یا یه پرانتز رو در فایل php جا بندازی یا اشتباه تایپ کنی، کل سایتت از دسترس خارج میشه و فقط یه صفحه سفید بهت نشون میده. در این حالت حتی به پیشخوان وردپرس هم دسترسی نخواهی داشت.
- از دست رفتن تغییرات با آپدیت: همونطور که گفتم، اگه از «پوسته فرزند» (Child Theme) استفاده نکنی، به محض اینکه پوستهات رو آپدیت کنی، تمام زحماتت (کدهای php و تغییرات single.php) برای همیشه پاک میشه.
- مشکلات ظاهری (CSS): کدی که اضافه میکنی، نیاز به استایلدهی CSS داره تا قشنگ به نظر برسه. این کدها بهطور پیشفرض ظاهر زیبایی ندارن و باید خودت براشون CSS بنویسی.
راهحل و توصیههای اکید من:
- ۱. همیشه بکاپ بگیر: قبل از اینکه حتی یه فایل رو باز کنی، از کل سایتت (هم فایلها و هم دیتابیس) یه بکاپ کامل و قابل بازیابی بگیر.
- ۲. حتماً از پوسته فرزند استفاده کن: تمام تغییرات PHP و CSS باید فقط در فایلهای پوسته فرزند اعمال بشن.
- ۳. روی سایت اصلی کار نکن: اول این تغییرات رو روی یه «سایت آزمایشی» (Staging) یا روی لوکال هاست (Localhost) تست کن. وقتی مطمئن شدی همهچیز درست کار میکنه و سایتت بالا میاد، بعد اون رو به سایت اصلی منتقل کن.
- ۴. از ویرایشگر وردپرس استفاده نکن: فایلهای php رو از طریق ویرایشگر خود وردپرس (بخش نمایش > ویرایشگر پرونده پوسته) ویرایش نکن. اگه اشتباهی کنی و سایت بپره، دیگه به اون بخش دسترسی نداری. همیشه از طریق FTP (مثل نرمافزار FileZilla) یا File Manager هاست خودت فایلها رو ویرایش کن تا اگه سایت خراب شد، بتونی سریعاً فایل رو اصلاح یا حذف کنی.
فعالسازی Breadcrumbs از طریق تنظیمات پوستههای آماده (Themes)
بررسی تنظیمات پوسته (Theme Options) برای فعالسازی ناوبری
تقریباً ۹۹٪ پوستههای مدرن و بهینهسازی شده برای سئو (مثل پوستههایی که اسمشون رو در ادامه میبرم)، تنظیمات مربوط به بردکرامب رو مستقیماً در بخش «سفارشیسازی» (Customize) وردپرس قرار دادن.
مسیر کارت باید این باشه:
- از پیشخوان وردپرس، به منوی «نمایش» (Appearance) برو و روی «سفارشیسازی» (Customize) کلیک کن.
- حالا باید توی گزینههای سفارشیسازی پوستهات بگردی. اسم این بخش در پوستههای مختلف فرق میکنه، اما معمولاً باید دنبال یکی از این کلمات بگردی:
- مسیر راهنما (Breadcrumbs): خیلی از پوستهها یه بخش اختصاصی براش دارن.
- طرحبندی (Layout): گاهی اوقات زیرمجموعه «طرحبندی هدر» یا «طرحبندی صفحه» است.
- بلاگ (Blog): ممکنه در تنظیمات مربوط به «نوشته تکی» (Single Post) یا «آرشیو بلاگ» باشه.
- تنظیمات عمومی (General Settings)
وقتی این بخش رو پیدا کردی، معمولاً یه دکمه ساده «فعال/غیرفعال» داره. اما نکته مهمتر اینه که بهت اجازه میده «منبع» (Source) بردکرامب رو هم انتخاب کنی.
نمونه تنظیمات در پوستههای محبوب (مانند Astra, GeneratePress)
بیا روی دو تا از محبوبترین پوستههای وردپرس این تنظیمات رو با هم مرور کنیم:
۱. پوسته آسترا (Astra Theme)
پوسته Astra یکی از بهترین هماهنگیها رو با افزونههای سئو داره. فعال کردن بردکرامب در آسترا فوقالعاده ساده است:
- برو به «نمایش» > «سفارشیسازی».
- در منوی سفارشیسازی، گزینهای به اسم «مسیر راهنما» (Breadcrumbs) رو میبینی. روش کلیک کن.
- در پنل جدید، اولین گزینه یه منوی کشویی به اسم «موقعیت» (Position) داره. اینجا میتونی انتخاب کنی که مسیر راهنما کجا نمایش داده بشه (مثلاً: «داخل هدر»، «بعد از هدر» یا «قبل از عنوان صفحه»).
- نکته طلایی: مهمترین بخش، گزینه بعدی یعنی «منبع مسیر راهنما» (Breadcrumb Source) هست. آسترا بهت اجازه میده انتخاب کنی که بردکرامب رو از کجا بخونه:
- پیشفرض (Default): از تابع داخلی خود آسترا استفاده میکنه.
- Yoast SEO: (پیشنهادی اگه یواست داری)
- Rank Math: (پیشنهادی اگه رنک مث داری)
- Breadcrumb NavXT: (اگه از اون افزونه تخصصی استفاده میکنی)
توصیه حرفهای من: اگه افزونه Yoast SEO یا Rank Math رو نصب و فعال کردی (که حتماً باید کرده باشی!)، حتماً «منبع» رو روی همون افزونه سئوی خودت تنظیم کن. این کار تضمین میکنه که همون اسکیمای بهینهای که افزونه سئو تولید میکنه، توسط پوستهات نمایش داده بشه.
۲. پوسته جنریتپرس (GeneratePress Theme)
پوسته GeneratePress به سبک بودن و ماژولار بودنش معروفه. (ممکنه برای فعالسازی برخی قابلیتها به نسخه Premium نیاز داشته باشی).
- برو به «نمایش» > «سفارشیسازی».
- وارد بخش «طرحبندی» (Layout) شو.
- در اینجا دنبال گزینهای به اسم «مسیر راهنما» (Breadcrumbs) بگرد.
- در تنظیماتش، مشابه آسترا، به احتمال زیاد گزینهای برای انتخاب «منبع» (Breadcrumb Source) پیدا میکنی.
- باز هم، اگه از Yoast یا Rank Math استفاده میکنی، حتماً منبع رو روی اونها تنظیم کن تا هماهنگی کامل برقرار بشه.
یه راهکار دیگه در GeneratePress (کمی حرفهایتر):
اگه این گزینه رو مستقیم پیدا نکردی، GeneratePress یه قابلیت فوقالعاده به اسم «Elements» (در نسخه پریمیوم) داره.
- میتونی یه «Element» از نوع «Hook» بسازی.
- کد کوتاه (Shortcode) یا کد PHP افزونه سئوت (که در بخشهای قبلی گفتم) رو داخلش بذاری.
- محل «Hook» رو روی generate_before_content یا generate_before_entry_title تنظیم کنی.
- در «قوانین نمایش» (Display Rules) هم مشخص کنی که در «نوشتهها»، «برگهها» و «آرشیوها» نشون داده بشه.
این روش حتی از ویرایش فایلهای پوسته هم امنتره، چون همهچیز از طریق پیشخوان مدیریت میشه.
جمعبندی:
در اکثر پوستههای باکیفیت (مثل Kadence, OceanWP, WoodMart و…) هم دقیقاً همچین تنظیماتی در بخش «سفارشیسازی» وجود داره. کافیه دنبال کلمه «Breadcrumbs» بگردی و مهمتر از همه، منبع (Source) اون رو با افزونه سئوی فعال سایتت هماهنگ کنی.
سفارشیسازی و استایلدهی به Breadcrumbs با CSS
چگونه ظاهر مسیر راهنما را با کدهای CSS ساده تغییر دهیم؟
اول از همه، این کدهای CSS رو کجا باید اضافه کنی؟
بهترین و امنترین جا: برو به «نمایش» > «سفارشیسازی» > «CSS اضافی» (Additional CSS). کدهایی که در ادامه میگم رو اونجا کپی کن و تغییر بده. اینجوری حتی با آپدیت پوسته هم کدهات پاک نمیشن.
بردکرامبها معمولاً در یه تگ nav یا div با یه کلاس (class) مشخص قرار میگیرن. مثلاً افزونه یواست ممکنه از کلاس yoast-breadcrumb استفاده کنه، رنک مث از rank-math-breadcrumb و پوستهها هم کلاسهای مخصوص خودشون رو دارن.
قدم اول: پیدا کردن کلاس اصلی
- برو به یکی از صفحات سایتت که بردکرامب داره.
- روش راستکلیک کن و «Inspect» (یا «Inspect Element») رو بزن.
- موس رو روی بردکرامب ببر تا در بخش کدها، تگ اصلی (nav یا div) که اون رو در بر گرفته، هایلایت بشه.
- اون کلاس اصلی رو پیدا کن. (مثلاً: .breadcrumbs یا .breadcrumb-navigation یا …)
ما در مثالهای زیر فرض میکنیم کلاس اصلی .breadcrumbs هست. تو باید این رو با کلاس واقعی سایت خودت جایگزین کنی.
مثالهای کاربردی CSS:
/* — استایل کلی بردکرامب — */
/* 1. تغییر فونت و اندازه کل مسیر راهنما */
.breadcrumbs {
font-size: 14px; /* اندازه فونت رو کوچیکتر میکنه */
font-weight: 500; /* ضخامت فونت */
}
/* 2. تغییر رنگ لینکهای داخل بردکرامب */
.breadcrumbs a {
color: #0056b3; /* یه رنگ آبی تیره برای لینکها */
text-decoration: none; /* برداشتن خط زیر لینکها */
}
/* 3. تغییر رنگ لینکها موقع هاور (رفتن موس روی اونها) */
.breadcrumbs a:hover {
color: #d9534f; /* قرمز شدن لینک موقع هاور */
text-decoration: underline; /* خط انداختن زیر لینک موقع هاور */
}
/* 4. استایل دادن به آیتم فعلی (که معمولاً لینک نیست) */
.breadcrumbs .current { /* کلاس آیتم فعلی معمولاً ‘current’ یا ‘breadcrumb_last’ هست */
color: #333333; /* رنگ تیرهتر برای صفحهای که الان توش هستیم */
font-weight: bold; /* درشت کردن متن صفحه فعلی */
}
با همین چند خط ساده، میتونی ظاهر بردکرامب رو کاملاً با هویت بصری سایتت هماهنگ کنی.
تغییر آیکون جداکننده (Separator) در Breadcrumbs
اون علامت کوچولویی که بین لینکها قرار میگیره (مثل > یا /) رو «جداکننده» یا Separator میگن. اگه از ظاهرش راضی نیستی، چند راه برای تغییرش داری:
راه اول: از طریق تنظیمات افزونه (روش ساده)
همونطور که قبلاً گفتم، هم افزونه Yoast SEO و هم Rank Math در بخش تنظیمات Breadcrumbs خودشون، یه فیلد دارن که بهت اجازه میده این کاراکتر رو بدون حتی یک خط کدنویسی تغییر بدی. میتونی بهجای > از « یا / یا هر کاراکتر دیگهای استفاده کنی. همیشه اول این گزینه رو چک کن.
راه دوم: استفاده از CSS (روش حرفهای)
اگه بخوای از یه آیکون واقعی (مثل آیکونهای Font Awesome) یا یه شکل خاص استفاده کنی، باید با CSS کار کنیم.
ما در این روش، جداکننده پیشفرض افزونه رو مخفی میکنیم و جداکننده دلخواه خودمون رو با استفاده از ::before (یا ::after) به آیتمهای لیست اضافه میکنیم.
/* — تغییر آیکون جداکننده — */
/* 1. مخفی کردن جداکننده پیشفرض افزونه */
/* (این بخش ممکنه بسته به افزونهات متفاوت باشه، باید Inspect کنی) */
.breadcrumbs .separator {
display: none;
}
/* 2. اضافه کردن جداکننده جدید به هر آیتم (به جز اولین آیتم) */
.breadcrumbs li::before {
/* استفاده از یه کاراکتر خاص */
content: ‘«’; /* میتونی از ‘ / ‘ یا ‘ « ‘ استفاده کنی */
/* تنظیمات ظاهری جداکننده */
color: #666; /* رنگ خاکستری */
margin-left: 8px;
margin-right: 8px;
}
/* 3. حذف جداکننده از قبل از اولین آیتم (چون نباید قبل از “خانه” چیزی باشه) */
.breadcrumbs li:first-child::before {
content: ”; /* خالی کردن محتوا */
margin: 0;
}
چطور از آیکون Font Awesome استفاده کنیم؟
اگه پوستهات از Font Awesome پشتیبانی میکنه (که اکثر پوستههای مدرن اینطورن)، میتونی کارهای خیلی جذابتری بکنی:
/* — استفاده از آیکون Font Awesome به عنوان جداکننده — */
/* (فرض میکنیم جداکننده پیشفرض رو طبق مرحله ۱ بالا مخفی کردی) */
.breadcrumbs li::before {
font-family: ‘Font Awesome 5 Free’; /* اسم فونت آیکون */
font-weight: 900; /* برای آیکونهای Solid */
content: ‘\f104’; /* این کد یونیکد آیکون < (angle-left) هست */
/* برای آیکون > (angle-right) از ‘\f105’ استفاده کن */
color: #555;
font-size: 12px;
margin-left: 10px;
margin-right: 10px;
}
/* باز هم، جداکننده رو از اولین آیتم حذف میکنیم */
.breadcrumbs li:first-child::before {
content: ”;
margin: 0;
}
نکته مهم: کدهای یونیکد آیکونها رو میتونی از سایت Font Awesome پیدا کنی.
اعتبارسنجی و اطمینان از صحت عملکرد Breadcrumbs
بررسی Schema Markup (JSON-LD) مربوط به Breadcrumbs
ببین، اون مسیر راهنمایی که تو روی صفحه سایتت میبینی (مثلاً: خانه > بلاگ > سئو)، برای کاربره. اما چیزی که گوگل برای فهمیدن این ساختار بهش نیاز داره، یه تیکه کد پنهانه که معمولاً در head سایتت یا نزدیک همون بردکرامب قرار میگیره. به این میگن «نشانهگذاری اسکیما» (Schema Markup).
این کد، یه جور ترجمهی همون مسیر راهنمای بصری، برای رباتهای گوگله.
بهترین، مدرنترین و پیشنهادیترین فرمت برای این کد، فرمت JSON-LD هست. اگه از افزونههای سئوی بهروزی مثل رنک مث یا یواست استفاده کرده باشی، اونها باید این کد رو بهطور خودکار برات ساخته باشن.
چطور میتونی این کد رو ببینی؟
- توی یکی از صفحاتی که بردکرامب داره (مثلاً یه مقاله یا یه محصول)، راستکلیک کن و گزینهی “View Page Source” (یا “نمایش منبع صفحه”) رو بزن.
- یه صفحه پر از کد برات باز میشه. نترس!
- کلیدهای Ctrl + F (یا Cmd + F در مک) رو بزن تا کادر جستجو باز بشه.
- داخل کادر، عبارت BreadcrumbList رو جستجو کن.
اگه همهچیز درست باشه، باید یه ساختار کدی شبیه به این پیدا کنی:
JSON
<script type=”application/ld+json” class=”rank-math-schema”>
{
“@context”: “https://schema.org”,
“@type”: “BreadcrumbList”,
“itemListElement”: [
{
“@type”: “ListItem”,
“position”: 1,
“name”: “خانه”,
“item”: “https://vazirseo.com/”
},
{
“@type”: “ListItem”,
“position”: 2,
“name”: “بلاگ سئو”,
“item”: “https://vazirseo.com/blog/”
},
{
“@type”: “ListItem”,
“position”: 3,
“name”: “آموزش کامل بردکرامب”
/* توجه کن که آیتم آخر (صفحه فعلی) نباید لینک “item” داشته باشه */
}
]
}
</script>
این کد دقیقاً به گوگل میگه: این یه لیست بردکرامبه (BreadcrumbList)، آیتم شماره ۱ (position: 1) «خانه» هست با این لینک، و آیتم شماره ۲ (position: 2) «بلاگ سئو» هست با این لینک، و آیتم آخر هم (صفحه فعلی) «آموزش کامل بردکرامب» هست.
تست و اعتبارسنجی مسیر راهنما با ابزار Google Rich Results Test
خب، دیدن اون کد توی سورس صفحه خوبه، اما کافی نیست. از کجا بفهمیم این کد کاملاً درست نوشته شده و هیچ خطای نگارشی (مثل یه کامای جا افتاده) نداره؟
اینجا پای ابزار رسمی و رایگان خود گوگل به میون میاد: Google Rich Results Test (تست نتایج غنی).
این ابزار بهترین دوست تو برای اعتبارسنجی اسکیماهاست. اینطوری ازش استفاده کن:
- عبارت «Google Rich Results Test» رو توی گوگل جستجو کن و وارد سایتش شو.
- دو تا گزینه داری: «URL» یا «Code».
- آدرس (URL) کامل یکی از صفحاتی که بردکرامب داره (مثلاً یه مقاله بلاگ) رو در کادر وارد کن.
- دکمه «TEST URL» رو بزن و چند ثانیه صبر کن تا گوگل صفحهات رو بررسی کنه.
- بعد از اتمام تست، در بخش «موارد شناساییشده» (Detected structured data) باید دنبال بردکرامب بگردی.
- اگه کارت رو درست انجام داده باشی، باید گزینهی «Breadcrumbs» رو با یه تیک سبز رنگ ✅ و وضعیت «Valid» (معتبر) ببینی.
اگه این تیک سبز رو گرفتی، بهت تبریک میگم! کارت رو بینقص انجام دادی و گوگل اسکیما رو بهدرستی شناسایی کرده. اگه «Warning» (هشدار) یا بدتر از اون «Error» (خطا) دیدی، یعنی یه جای کار میلنگه و باید بری سراغ مرحله عیبیابی.
رفع اشکالات رایج: چرا Breadcrumbs نمایش داده نمیشود؟
خب، اگه بردکرامب رو فعال کردی اما توی سایت نمیبینیش، یا توی ابزار Rich Results Test اصلاً شناسایی نمیشه، معمولاً یکی از این دلایل پشت ماجراست. بیا با هم این چکلیست عیبیابی رو مرور کنیم:
- کد فراخوانی را اضافه نکردهاید (شایعترین مشکل):
- مشکل: فقط گزینه بردکرامب رو در افزونه (یواست یا رنک مث) فعال کردی، اما کد PHP مربوط بهش رو در فایلهای پوسته (php یا single.php) قرار ندادی.
- راهحل: برگرد به بخشهای قبلی و مطمئن شو که یا کد فراخوانی (rank_math_the_breadcrumb()) رو اضافه کردی، یا از تنظیمات خود پوسته (Theme Options) اون رو فعال کردی.
- مشکل کش (Caching):
- مشکل: تو تغییرات رو اعمال کردی، اما افزونه کش سایتت (مثل WP Rocket یا LiteSpeed Cache) هنوز نسخه قدیمی صفحه رو به کاربرها و گوگل نشون میده.
- راهحل: همیشه بعد از هر تغییری در تنظیمات بردکرامب یا کدهای پوسته، کش کل سایتت (Purge All Cache) رو کامل پاک کن.
- تداخل پوسته (Theme Conflict):
- مشکل: پوستهی تو خودش یه تابع بردکرامب داخلی داره و داره اون رو نشون میده، نه بردکرامب افزونه سئوی تو. یا اینکه پوستهات اصلاً جایگاهی برای نمایش بردکرامب نداره.
- راهحل: به تنظیمات پوسته برو (بخش سفارشیسازی) و ببین گزینهای برای «منبع» بردکرامب داره یا نه. اگه داره، حتماً روی افزونه سئوت (Rank Math/Yoast) تنظیمش کن.
- تنظیمات اشتباه در افزونه:
- مشکل: ممکنه تنظیمات رو اشتباه انجام داده باشی. مثلاً در افزونه یواست، برای «نوشتهها»، بخش «طبقهبندی برای نمایش» رو روی «هیچکدام» گذاشتی. خب معلومه که مسیری ساخته نمیشه!
- راهحل: دوباره تنظیمات افزونه سئوت رو با دقت چک کن. مطمئن شو که برای نوشتهها، حتماً «دستهبندی» (Category) رو انتخاب کردی.
- خطا در اسکیمای (JSON-LD):
- مشکل: این مورد بیشتر وقتی پیش میاد که کد رو «دستی» نوشته باشی. ممکنه یه کاما (,)، یه پرانتز ({})، یا یه کوتیشن (“) رو اشتباه گذاشته باشی و کل ساختار JSON خراب شده باشه.
- راهحل: ابزار Rich Results Test دقیقاً بهت میگه که خطا در کدوم خط هست.
عیبیابی بردکرامب معمولاً سخت نیست، فقط باید بدونی دقیقاً کجاها رو باید چک کنی. این چکلیست رو دنبال کن، مطمئنم مشکلت حل میشه.
جمعبندی: حالا نوبت توست!
خب، به پایان این راهنمای کامل رسیدیم. حالا تو دقیقاً میدونی بردکرامب (Breadcrumbs) چیست، چرا هم برای تجربه کاربری (UX) و هم برای سئوی سایتت (مخصوصاً برای گرفتن Rich Snippet در گوگل) حیاتیه. با هم یاد گرفتیم که چطور قدم به قدم اون رو با افزونههای سئو، تنظیمات پوسته یا حتی کدنویسی دستی فعال، استایلدهی و اعتبارسنجی کنیم.
توصیه قطعی من به تو اینه که اگه تا الان فعالش نکردی، همین امروز این کار رو انجام بده (ترجیحاً با همون افزونه سئویی که روی سایتت داری). این یه بهینهسازی ساده با یه تاثیر فوقالعاده بزرگه که هم کاربرهات و هم گوگل ازت متشکر خواهند بود.
اگه در مورد هرکدوم از این مراحل سوالی داشتی یا در مورد بهینهسازی بخش دیگهای از سایتت نیاز به راهنمایی داشتی، من همینجا آمادهام تا کمکت کنم. موفق باشی!
سوالات متداول (FAQ)
۱. آیا بردکرامب برای همه سایتها ضروری است؟
تقریباً بله! بردکرامب بهخصوص برای سایتهایی که بیشتر از یک لایه دارن (مثل فروشگاههای اینترنتی، بلاگهای دستهبندی شده، سایتهای شرکتی با صفحات متعدد) حیاتیه. تنها جایی که شاید بهش نیازی نباشه، سایتهای تکصفحهای (Single Page) یا سایتهای خیلی کوچیک (مثلاً ۳-۴ صفحهای بدون هیچ سلسلهمراتبی) هستن.
۲. بین بردکرامب افزونه Yoast و Rank Math کدام بهتر است؟
هردوشون کار اصلی (یعنی ساختن مسیر و اضافه کردن اسکیمای BreadcrumbList) رو عالی انجام میدن. رنک مث (Rank Math) معمولاً در تنظیمات ظاهری و گزینههای سفارشیسازی کمی انعطافپذیرتره، اما در نهایت، هرکدوم رو که بهعنوان افزونه اصلی سئوی سایتت انتخاب کردی، از همون برای بردکرامب هم استفاده کن تا هماهنگی کامل وجود داشته باشه.
۳. چرا بردکرامب من در نتایج گوگل نمایش داده نمیشود؟
این میتونه ۳ دلیل اصلی داشته باشه: ۱. خطای اسکیما: (مهمترین دلیل) با ابزار «Google Rich Results Test» بررسی نکردی و اسکیمای تو «Valid» (معتبر) نیست و خطا داره. ۲. زمان: بهتازگی اون رو فعال کردی و گوگل هنوز صفحاتت رو دوباره نخزیده (Crawl نکرده) و تغییرات جدید رو ندیده. ۳. تصمیم گوگل: اسکیمای تو کاملاً درسته، اما گوگل تصمیم گرفته که اون رو نشون نده. یادت باشه، گوگل هیچ تعهدی نداره که حتماً Rich Snippet رو نشون بده، اما اگه کد اسکیمات «Valid» باشه، تو شانس این اتفاق رو به حداکثر رسوندی.