رفتن به مطلب

نمایش عنوان دسته مادر بدون زیر دسته


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

سلام خسته نباشید

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

کد زیر

<?php the_category(', ') ?>


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

لینک به ارسال

سلام و درود

 

تابع زیر رو توی فایل functions.php قالبتون زیر اولین

<?php

قرار بدید.

function the_parent_category() {
	
	global $post;
	
	$categories = get_the_catgeoy($post->ID);
	
	$parent_category = array();
	foreach($categories as $category) {
		
		if($category->parent === 0) {
			
			$parent_category[] = $category->term_id;
			
		}
		
	}
	
	if($parent_category === array()) {
		
		echo "دسته مادر یافت نشد";
		return;
		
	}
	
	$output = "";
	foreach($parent_category as $parent_id) {
		
		if($output === "") {
			
			$output .= '<a href="'.esc_url(get_category_link($parent_id)).'" rel="category tag">'.esc_html(get_cat_name($parent_id)).'</a>';
			
		} else {
			
			$output .= ', <a href="'.esc_url(get_category_link($parent_id)).'" rel="category tag">'.esc_html(get_cat_name($parent_id)).'</a>';
			
		}
		
	}
	
	echo $output;
	
}

سپس به جای تابع

<?php the_category(', ') ?>

تابع

<?php the_parent_category() ?>

را در حلقه قرار بدید.

 

موفق باشید

لینک به ارسال

بازم  نشد

<?php the_parent_category() ?>

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

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

لینک به ارسال

درود مجدد

 

عذر میخوام چون کد رو عجله ای نوشتم اشتباه املایی داشت.

function the_parent_category() {
	
	global $post;
	
	$categories = get_the_category($post->ID);
	
	$parent_category = array();
	foreach($categories as $category) {
		
		if($category->parent === 0) {
			
			$parent_category[] = $category->term_id;
			
		}
		
	}
	
	if($parent_category === array()) {
		
		echo "دسته مادر یافت نشد";
		return;
		
	}
	
	$output = "";
	foreach($parent_category as $parent_id) {
		
		if($output === "") {
			
			$output .= '<a href="'.esc_url(get_category_link($parent_id)).'" rel="category tag">'.esc_html(get_cat_name($parent_id)).'</a>';
			
		} else {
			
			$output .= ', <a href="'.esc_url(get_category_link($parent_id)).'" rel="category tag">'.esc_html(get_cat_name($parent_id)).'</a>';
			
		}
		
	}
	
	echo $output;
	
}

 

موفق باشید

لینک به ارسال

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

<?php
	$category = get_the_category();
	$tt =  ($category[0]->cat_ID);
	echo get_the_category_by_ID( $tt );
?>

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

<?php the_parent_category() ?>

 

لینک به ارسال

 

در 3 ساعت قبل، vesal84 گفته است :

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


<?php
	$category = get_the_category();
	$tt =  ($category[0]->cat_ID);
	echo get_the_category_by_ID( $tt );
?>

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


<?php the_parent_category() ?>

 

function the_parent_category() {
	
	global $post;
	
	$categories = get_the_category($post->ID);
	
	$parent_category = array();
	foreach($categories as $category) {
		
		if($category->parent === 0) {
			
			$parent_category[] = $category->term_id;
			
		}
		
	}
	
	if($parent_category === array()) {
		
		echo "دسته مادر یافت نشد";
		return;
		
	}
	
	$output = "";
	foreach($parent_category as $parent_id) {
		
		if($output === "") {
			
			$output .= esc_html(get_cat_name($parent_id));
			
		} else {
			
			$output .= esc_html(get_cat_name($parent_id));
			
		}
		
	}
	
	echo $output;
	
}

کافی بود فقط تگ <a> رو بردارید

لینک به ارسال
در در 12/22/2017 at 00:55، vesal84 گفته است :

اگه بخواییم کد زیر  فقط یه دسته رو نشون بده چیکار باید بکنیم؟

 

<?php the_parent_category() ?>

یعنی چی ی دسته رو نشون بده،  

لینک به ارسال

این عنوان همه دسته های مادرو نشون میده

من سه تا دسته دارم با آیدی های 1393-1394-1395

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

لینک به ارسال

سلام علیکم

ببخشید فکر کنم من منظورمو به خوبی نرسوندم

من یه کدی میخوام که بزارم بالای مطالب تو صفحه اول سایت

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

این کد زیر 

<?php the_parent_category() ?>

نام دسته مادر مربوط به همه پستارو مینویسه

کدی که شما دادید

<?php  echo get_cat_name( $cat_id ) ?>

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

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

که اگه مطلب مربوط به دسته مادر 1394 بود ، اسم دسته 1394 رو بیاره اگه مربوط به اون دسته(1394) نبود چیزی نیاره

 

بازم تشکر میکنم از زحماتی که کشیدید

لینک به ارسال
در در 12/25/2017 at 00:10، vesal84 گفته است :

این عنوان همه دسته های مادرو نشون میده

من سه تا دسته دارم با آیدی های 1393-1394-1395

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

درود مجدد

 

function the_parent_category() {
	
	global $post;
	
	$categories = get_the_category($post->ID);
	
	$parent_category = array();
	foreach($categories as $category) {
		
		if($category->parent === 0) {
			
			$parent_category[] = $category->term_id;
			
		}
		
	}
	
	if($parent_category === array()) {
		
		echo "دسته مادر یافت نشد";
		return;
		
	}
	
	if(count($parent_category) > 1) {
		
		$parent_category = max($parent_category);
		
	}
	
	$output = esc_html(get_cat_name($parent_category));
	
	echo $output;
	
}

 

موفق باشید

لینک به ارسال

درود مجدد

 

نقل قول

خب من اگه بخوام دسته شماره 1395 رو نشون بده چیکار باید بکنم

اون کدی که دادم رو جایگزین کدهای قبلی تیو فابل functions.php قالبتون میکنید و به این شکل آخرین مادر رو که 1395 هست رو خروجی میگیرید:

<?php the_parent_category(); ?>

 

لینک به ارسال

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

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

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

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

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

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

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

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

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