بیگ تم, متفاوت & حرفه ای
مرجع ارائه آموزش وردپرس , قالب وردپرس , افزونه وردپرس بی نظیر


خانه / آموزش وردپرس / آموزش ساخت breadcrumb در وردپرس – مکان فعلی کاربر
آموزش ساخت breadcrumb در وردپرس - مکان فعلی کاربر


آموزش ساخت breadcrumb در وردپرس – مکان فعلی کاربر

سلام با یکی دیگر از آموش های وردپرس در خدممتون هستم در این پست می خوام آموزش ساخت breadcrumb در وردپرس رو بگم برید کرومب همون موقعیت کنونی کاربر در سایت هستش یعنی وقتی وارد یه دسته بندی میشید و در اون دسته بندی وارد یه مطلبی میشید در بالای اون پست موقعیت شما نمایش داده میشه که بهش میگن breadcrumb و به صورت مثلا ( خانه » نام دسته بندی » نام پست ).

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

حتی افزونه wordpress seo هم به این نکته اشاره کردهو

آموزش ساخت breadcrumb در وردپرس

خوب اگر برای قالب وردپرس شما این کد تعریف نشده و شما این قابلیت رو داخل قالبتون ندارید دست به کار شید , ابتدا فایل Functins.php قالب رو باز کنید و کد زیر رو به این فایل اضافه کنید ( نکته : کد رو در محل مناسب قررا بدید )

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 . '"' . 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>';

}
}

خوب بعد از اینکه کد بالا رو در فایل functins.php قرار دادید , حالا باید کد نمایش breadcrumb رو در فایل های مورد نظرتون قرار بدید مثلا فایل های ( single.php , page.php , tag.php , category.php ) هر کدوم از این فایل ها که در قالبتون وجود داره بهتره که کد زیر رو در محل مناسب از این فایل ها قرار بدید اغلب موقعیت کاربر در بالای محتوای اصلی نمایش داده میشه پایین header و بالای محتوا اطلاعات بیشتر درباره ی فایل های قالب وردپرس رو مطالعه کنید.

کد مورد نظر برای نمایش موقعیت کنونی کاربر

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

بعد از قرار دادن در فایل های مورد نظر می تونید نتیجه ی کارتون رو ببینید , اگر با کدهای html آشنایی دارید می تونید کد بالا رو در بین یه div قررار بدید و براش calss تعریف کنید و به دلخواه و سلیقه ی خودتون بهش استایل بدید.

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

باکس دانلود

14 دیدگاه

  1. ممنون از مطلب خوبتون من انجام دادم و به این شد

    dl.moviebaz.net/%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF-%D9%85%D9%88%D8%B2%DB%8C%DA%A9-%D9%88%DB%8C%D8%AF%DB%8C%D9%88-%D8%AC%D8%AF%DB%8C%D8%AF-%D9%88-%D8%A8%D8%B3%DB%8C%D8%A7%D8%B1-%D8%B2%DB%8C%D8%A8%D8%A7%DB%8C-mike-de/

    میشه یه استایل مناسب بگید بزارم براش یکم بیریخت هستش اینطوری و من از html سر در نمیارم..شرمنده هادی جان مرسی

  2. من منظورم استایل breadcrumb بود به هر جهت ممنون

  3. داش من گذاشتم کلا وردپرس از کار افتاد !!

  4. ممنون خیلی مفید بود.

  5. لطفا اموزش استفاده از افزونه breadcrumb در سایتتون بذارید
    با تشکر

  6. الان روی زمپ دارم تست میکنم ولی ارور Parse error: syntax error, unexpected ‘<', expecting variable (T_VARIABLE) or '$' in C:\xampp\htdocs\wp-content\themes\poostak-2014\functions.php on line 14
    را میدهد در فانکشنم همه کدها صحیح جاگزاری شده ممنون از نشر مطالب خوبتون

پاسخ دهید

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

دنبال کردن