رفتن به مطلب

نحوه فراخوانی بخش٫مقالات مرتبط توسط فانکشن


پست های پیشنهاد شده

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

<?php
$notin = array($post->ID);
	$cat_post = array(
		'category__in'  => wp_get_post_categories($post->ID),
		'posts_per_page'      => '5',
		'orderby' => 'rand',
		'post__not_in' => array($post->ID),
	);
	$cat_show = new WP_Query($cat_post);
	if($cat_show->have_posts() ) {
		echo '<ul>';
		while ($cat_show->have_posts()){
			$cat_show->the_post();
			array_push($notin,get_the_ID());
			echo '<li class="clarfix"><a href="'.get_permalink().'">';
				if(has_post_thumbnail()) {
					the_post_thumbnail('sidebar-thumb' , array('class'=> 'img-responsive'));
				}
				echo '<h2 class="title-post">'.get_the_title().'</h2></a>
				<div class="fields clearfix">
					<span class="time pull-right"><i class="icon ion-calendar" aria-hidden="true" ></i>'.get_the_date('F j').'</span>
					<span class="comment pull-left"><i class="icon ion-ios-chatbubble-outline" aria-hidden="true" ></i>'.get_comments_number().'</span>
				</div>';
			echo '</li>';
		}
		echo '</ul>';wp_reset_query();
	}
?>

این کد زمانی که دقیقا در بخش سایدبار قالبم قرار می دهم به درستی عمل میکنه .

 

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

دستورات درون فایل مربوط به فانکشنها

function widget_related_sidebar(){
	$notin = array($post->ID);
	$cat_post = array(
		'category__in'  => wp_get_post_categories($post->ID),
		'posts_per_page'      => '5',
		'orderby' => 'rand',
		'post__not_in' => array($post->ID),
	);
	$cat_show = new WP_Query($cat_post);
	if($cat_show->have_posts() ) {
		echo '<ul>';
		while ($cat_show->have_posts()){
			$cat_show->the_post();
			array_push($notin,get_the_ID());
			echo '<li class="clarfix"><a href="'.get_permalink().'">';
				if(has_post_thumbnail()) {
					the_post_thumbnail('sidebar-thumb' , array('class'=> 'img-responsive'));
				}
				echo '<h2 class="title-post">'.get_the_title().'</h2></a>
				<div class="fields clearfix">
					<span class="time pull-right"><i class="icon ion-calendar" aria-hidden="true" ></i>'.get_the_date('F j').'</span>
					<span class="comment pull-left"><i class="icon ion-ios-chatbubble-outline" aria-hidden="true" ></i>'.get_comments_number().'</span>
				</div>';
			echo '</li>';
		}
		echo '</ul>';wp_reset_query();
	}
}

 

تصویر خروجی مرتبط با کد قسمت اول :  ( خروجی صحیح می باشد - کل مطالب این دسته بندی سه عدد می باشد که یکی مطلب اصلی که داره نمایش میده و دو مطلب که درون بخش سایدبار به صورت مطالب مرتبط قرار گرفته . ) . 

pic01.PNG.1911c79935f504782576fea8add88446.PNG

 

تصویر خروجی مرتبط با کد قسمت اول : - خروجی اشتباه . 
 

pic02.PNG.1fcebe566d477fe22b1d16f15747dbc0.PNG

ویرایش شده توسط mehdi.tayebi
لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...