درج شما اینجا هستید وردپرس(breadcrumb وردپرس) - طراحی سایت | ساخت سایت | قالب وردپرس

درج شما اینجا هستید وردپرس(breadcrumb وردپرس)

۲۵ اردیبهشت ۱۳۹۲
3457 بازدید
۳ دیدگاه
wp-breath

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

این قابلیت breadcrumb وردپرس نام دارد که من ترجمه مناسبی برای آن پیدا نکردم .اگر می خواهید در وبسایت خود از این قابلیت استفاده کنید کافیست ابتدا کد زیر را در function.php پوسته وردپرس خود قرار دهید :

<?php
function remon_breadcrumbs() {
	$showOnHome 	= ۱; 			// ۱ - show breadcrumbs on the homepage, 0 - don't show
	$delimiter		= '&raquo;'; 	// delimiter between crumbs
	$home 			= 'صفحه اصلی'; 		// text for the 'Home' link
	$showCurrent 	= ۱; 			// ۱ - show current post/page title in breadcrumbs, 0 - don't show
	$before 		= '<span class="current">'; // tag before the current crumb
	$after 			= '</span>'; 	// tag after the current crumb

	global $post;
	$homeLink = get_bloginfo('url');

	if (is_home() || is_front_page()){
		if ($showOnHome == 1) echo '<div id="breadcrumbs">شمااینجا هستید: <a href="' . $homeLink . '">' . $home . '</a></div>';
	}else{
		echo '<div id="breadcrumbs" class="blue ' . $class . '">شمااینجا هستید: <a href="' . $homeLink . '">' . $home . '</a> ' . $delimiter . ' ';

		if (is_category()){
			$thisCat = get_category(get_query_var('cat'), false);
			if ($thisCat->parent != 0) echo get_category_parents($thisCat->parent, TRUE, ' ' . $delimiter . ' ');
			echo $before . 'Archive by category "' . single_cat_title('', false) . '"' . $after;

		}else
		if (is_search()){
			echo $before . 'Search results for "' . get_search_query() . '"' . $after;
		}else
		if (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;

		}else
		if(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;
		}else
		if(is_year()){
			echo $before . get_the_time('Y') . $after;
		}else
		if (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>';
				if ($showCurrent == 1) echo ' ' . $delimiter . ' ' . $before . get_the_title() . $after;
			}else{
			$cat = get_the_category(); $cat = $cat[0];
				$cats = get_category_parents($cat, TRUE, ' ' . $delimiter . ' ');
				if ($showCurrent == 0) $cats = preg_replace("#^(.+)\s$delimiter\s$#", "$1", $cats);
				echo $cats;
				if ($showCurrent == 1) echo $before . get_the_title() . $after;
			}
		}else
		if(!is_single() && !is_page() && get_post_type() != 'post' && !is_404()){
			$post_type = get_post_type_object(get_post_type());
			echo $before . $post_type->labels->singular_name . $after;
		}else
		if (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>';
			if ($showCurrent == 1) echo ' ' . $delimiter . ' ' . $before . get_the_title() . $after;
		}else
		if (is_page() && !$post->post_parent){
			if ($showCurrent == 1) echo $before . get_the_title() . $after;
		}else
		if (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);
			for ($i = 0; $i < count($breadcrumbs); $i++) {
				echo $breadcrumbs[$i];
				if ($i != count($breadcrumbs)-1) echo ' ' . $delimiter . ' ';
			}
			if ($showCurrent == 1) echo ' ' . $delimiter . ' ' . $before . get_the_title() . $after;

		}else
		if (is_tag()){
			echo $before . 'Posts tagged "' . single_tag_title('', false) . '"' . $after;
		}else
		if (is_author()){
			global $author;
			$userdata = get_userdata($author);
			echo $before . 'Articles posted by ' . $userdata->display_name . $after;
		}else
		if (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>';
	}
}
?>

حالا هرجایی که از پوسته که می خواهید این مورد را قرار دهید کافیست این کد را کپی کنید:

<?php if (function_exists('remon_breadcrumbs')) remon_breadcrumbs(); ?>
امتیاز:
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...Loading...
اشتراک گذاری:
مطالب مرتبط

نظرات بازدید کنندگان

  1. فومن ویلا

    سلام
    میخواستم تشکر کنم.
    امتحان کردم و جواب داد.
    واقعا تو سایت بهش نیاز داشتم
    میتونید تو سایتمم ببینید.
    foumanvilla.ir

  2. طراحی قالب وردپرس

    خیلی ممنون بابت وقتی که قرار دادید , آموزش فوق العاده ای بود

  3. محمد

    عالی بود نسبت به آموزش بقیه سایت ها
    ساده و راحت کوتا و مفید!
    خسته نباشید ♥

دیدگاه شما