شماره صفحات وردپرس - طراحی سایت | ساخت سایت | قالب وردپرس

شماره صفحات وردپرس

۱۲ بهمن ۱۳۹۲
1555 بازدید
یک دیدگاه
شماره صفحات وردپرس

قبلا در مطلبی با عنوان شماره صفحات وردپرس بدون افزونه نحوه نمایش شماره صفحات وردپرس را آموزش داده ایم. اما این کد مناسب تغییر شکل پیش فرض صفحه بندی در وردپرس که به صورت”صفحه قبل” و “صفحه بعد” می باشد ، است.
از نظر ما صفحه بندی عددی بیشتر کاربر پسند است و تاثیر بالاتری بر سئوی سایت دارد.
گرچه کد قبلی نیز به خوبی در قالبه کار می کند ، اما برخی اوقات نیاز به انجام تنظیماتی در کوئری وردپرس داشت . ولی با این کد می توانید در هر جای قالب (صفحه اصلی،دسته ها،آرشیو و..) از صفحه بندی عددی استفاده کنید.خوب صحبت را کوتاه کنیم و به آموزش بپردازیم.
ابتدا کد زیر را در فایل function.php قالب وردپرس خود کپی کنید:

<?php
function wpbeginner_numeric_posts_nav() {

	if( is_singular() )
		return;

	global $wp_query;

	/** Stop execution if there's only 1 page */
	if( $wp_query->max_num_pages <= 1 )
		return;

	$paged = get_query_var( 'paged' ) ? absint( get_query_var( 'paged' ) ) : 1;
	$max   = intval( $wp_query->max_num_pages );

	/**	Add current page to the array */
	if ( $paged >= 1 )
		$links[] = $paged;

	/**	Add the pages around the current page to the array */
	if ( $paged >= 3 ) {
		$links[] = $paged - 1;
		$links[] = $paged - 2;
	}

	if ( ( $paged + 2 ) <= $max ) {
		$links[] = $paged + 2;
		$links[] = $paged + 1;
	}

	echo '<div class="navigation"><ul>' . "\n";

	/**	Previous Post Link */
	if ( get_previous_posts_link() )
		printf( '<li>%s</li>' . "\n", get_previous_posts_link() );

	/**	Link to first page, plus ellipses if necessary */
	if ( ! in_array( 1, $links ) ) {
		$class = 1 == $paged ? ' class="active"' : '';

		printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( 1 ) ), '1' );

		if ( ! in_array( 2, $links ) )
			echo '<li>…</li>';
	}

	/**	Link to current page, plus 2 pages in either direction if necessary */
	sort( $links );
	foreach ( (array) $links as $link ) {
		$class = $paged == $link ? ' class="active"' : '';
		printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( $link ) ), $link );
	}

	/**	Link to last page, plus ellipses if necessary */
	if ( ! in_array( $max, $links ) ) {
		if ( ! in_array( $max - 1, $links ) )
			echo '<li>…</li>' . "\n";

		$class = $paged == $max ? ' class="active"' : '';
		printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( $max ) ), $max );
	}

	/**	Next Post Link */
	if ( get_next_posts_link() )
		printf( '<li>%s</li>' . "\n", get_next_posts_link() );

	echo '</ul></div>' . "\n";

}

?>

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

<?php wpbeginner_numeric_posts_nav(); ?>

برای زیباتر شدن شماره صفحات نیز می توانید از کد css زیر استفاده کنید

.navigation li a,
.navigation li a:hover,
.navigation li.active a,
.navigation li.disabled {
	color: #fff;
	text-decoration:none;
}

.navigation li {
	display: inline;
}

.navigation li a,
.navigation li a:hover,
.navigation li.active a,
.navigation li.disabled {
	background-color: #6FB7E9;
	border-radius: 3px;
	cursor: pointer;
	padding: 12px;
	padding: 0.75rem;
}

.navigation li a:hover,
.navigation li.active a {
	background-color: #3C8DC5;
}
امتیاز:
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...Loading...
اشتراک گذاری:
مطالب مرتبط

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

  1. رضا

    سلام مممنونم ازت خیلی بهم کمک کرد

دیدگاه شما