آموزش وردپرس, تکنیک های سئو, مقالات وردپرس

نمایش آدرس کنونی breadcrumb صفحات وردپرس

نحوه اضافه کردن breadcrumb بدون افزونه در وردپرس

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

 

breadcrumb یا نشانگر صفحات در وردپرس

breadcrumb یا نشانگر صفحات در وردپرس

 

ساخت نشانگر صفحات یا breadcrumb چه مزایایی داره:

ساخت نشانگر صفحات وردپرس اول از همه برای سئو سایت شما سودمند خواهد بود چیزی که همه این روزها به دنبالش هستند اما چطور؟
این کار باعث میشه که موتورهای جستجو مثل google بتونن سایت شما رو بهتر شناسایی کنند و مطالب شما رو به بهترین نحو ممکن دسته بندی کنند. خیلی از افزونه های سئو و بهینه سازی سایت مثل افزونه Yoast SEO که یکی از محبوب ترین افزونه های وردپرسی میباشد در خود تنظیماتش یکسری گزینه ها دارد تا کاربران سایت بتوانند مسیر فعلی خودشون رو مشاهده بکنند.

همچنین ساخت نشانگر صفحات وردپرس باعث نظم دادن به سایت شما میشه زمانی که شما موقعیت کنونی کاربرانتان را نمایش می دهید کاربران همواره میدونن که در کدام مطلب , موضوع یا حتی دسته بندی هستند که اون هارو از سردرگمی در سایتتون در امون نگه می داره و حتی باعث میشه که به دیگر دسته بندی های سایت شما هم سر بزنن و از مطالب سایتتون استفاده کنن و به طبع زمان بیشتری رو در سایت شما سپری می کنند و این یعنی ترافیک بیشتر برای سایت شما!

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

ابتدا از فایل functions.php موجود در ریشه قالبتون (که در مسیر wp-content/themes/themename میباشد قرار دارد در این مسیر منظور از themename همان نام قالب وردپرس فعال در سایت شما میباشد) یک نسخه پشتیبان تهیه کنید که در صورت خطا، مشکلی براتون پیش نیاد و بتونید فایل رو به وضعیت اولش برگردونید سپس کد زیر را به فایلتون اضافه کنید :

 

function dimox_breadcrumbs() {

$delimiter = '»';
$home = 'Home'; // text for the 'Home' link
$before = '<span>'; // tag before the current crumb
$after = '</span>'; // tag after the current crumb

if ( !is_home() && !is_front_page() || is_paged() ) {

echo '
<div id="crumbs">';

global $post;
$homeLink = get_bloginfo('url');
echo '<a href="' . $homeLink . '">' . $home . '</a> ' . $delimiter . ' ';

if ( is_category() ) {
global $wp_query;
$cat_obj = $wp_query->get_queried_object();
$thisCat = $cat_obj->term_id;
$thisCat = get_category($thisCat);
$parentCat = get_category($thisCat->parent);
if ($thisCat->parent != 0) echo(get_category_parents($parentCat, TRUE, ' ' . $delimiter . ' '));
echo $before . 'Archive by category "' . single_cat_title('', false) . '"' . $after;

} elseif ( is_day() ) {
echo '<a href="' . get_year_link(get_the_time('Y')) . '">' . get_the_time('Y') . '</a> ' . $delimiter . ' ';
echo '<a href="' . get_month_link(get_the_time('Y'),get_the_time('m')) . '">' . get_the_time('F') . '</a> ' . $delimiter . ' ';
echo $before . get_the_time('d') . $after;

} elseif ( is_month() ) {
echo '<a href="' . get_year_link(get_the_time('Y')) . '">' . get_the_time('Y') . '</a> ' . $delimiter . ' ';
echo $before . get_the_time('F') . $after;

} elseif ( is_year() ) {
echo $before . get_the_time('Y') . $after;

} elseif ( is_single() && !is_attachment() ) {
if ( get_post_type() != 'post' ) {
$post_type = get_post_type_object(get_post_type());
$slug = $post_type->rewrite;
echo '<a href="' . $homeLink . '/' . $slug['slug'] . '/">' . $post_type->labels->singular_name . '</a> ' . $delimiter . ' ';
echo $before . get_the_title() . $after;
} else {
$cat = get_the_category(); $cat = $cat[0];
echo get_category_parents($cat, TRUE, ' ' . $delimiter . ' ');
echo $before . get_the_title() . $after;
}

} elseif ( !is_single() && !is_page() && get_post_type() != 'post' ) {
$post_type = get_post_type_object(get_post_type());
echo $before . $post_type->labels->singular_name . $after;

} elseif ( is_attachment() ) {
$parent = get_post($post->post_parent);
$cat = get_the_category($parent->ID); $cat = $cat[0];
echo get_category_parents($cat, TRUE, ' ' . $delimiter . ' ');
echo '<a href="' . get_permalink($parent) . '">' . $parent->post_title . '</a> ' . $delimiter . ' ';
echo $before . get_the_title() . $after;

} elseif ( is_page() && !$post->post_parent ) {
echo $before . get_the_title() . $after;

} elseif ( is_page() && $post->post_parent ) {
$parent_id  = $post->post_parent;
$breadcrumbs = array();
while ($parent_id) {
$page = get_page($parent_id);
$breadcrumbs[] = '<a href="' . get_permalink($page->ID) . '">' . get_the_title($page->ID) . '</a>';
$parent_id  = $page->post_parent;
}
$breadcrumbs = array_reverse($breadcrumbs);
foreach ($breadcrumbs as $crumb) echo $crumb . ' ' . $delimiter . ' ';
echo $before . get_the_title() . $after;

} elseif ( is_search() ) {
echo $before . 'Search results for "' . get_search_query() . '"' . $after;

} elseif ( is_tag() ) {
echo $before . 'Posts tagged "' . single_tag_title('', false) . '"' . $after;

} elseif ( is_author() ) {
global $author;
$userdata = get_userdata($author);
echo $before . 'Articles posted by ' . $userdata->display_name . $after;

} elseif ( is_404() ) {
echo $before . 'Error 404' . $after;
}

if ( get_query_var('paged') ) {
if ( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) echo ' (';
echo __('Page') . ' ' . get_query_var('paged');
if ( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) echo ')';
}

echo '</div>

';

}
}

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

<?php if (function_exists('dimox_breadcrumbs')) dimox_breadcrumbs(); ?>

 

همچنین بدلیل اینکه این کد ها در قالب وردپرس سایت شما قرار میگیرد در صورتی که قالب فعال سایتتون رو تغییر بدید و از یک قالب دیگر استفاده بکنید این تنظیمات غیرفعال شده و مجددا باید همینکار را بر روی قالب جدید سایتتون هم اعمال بکنید تا مسیر کنونی کاربر در سایت را بتوانید مشاهده بکنید.

با تشکر از همراهی شما با این قسمت از آموزش وردپرس اگر در رابطه با این پست سوال یا مشکلی دارید در قسمت نظرات اعلام بکنید تا راهنمایی شوید. در صورتی که نیاز به قالب وردپرس دارید میتوانید به دسته بندی قالب وردپرس مراجعه بکنید.

author-avatar

درباره مجتبی صادقیان

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

نوشته های مشابه

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

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