رفتن به مطلب

استفاده از پست تایپ سفارشی و taxonomy خاص در حلقه وردپرس


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

سلام و درود.

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

پست تایپ به اسم book هست  و taxonomy خاص موجود در book هم اسمش new هست.

چطور میشه حلقه ای ساخت که مطالب موجود در این پست تایپ رو نمایش بده؟

ممنون میشم از همراهیتون.. پاینده باشید

لینک به ارسال
در 6 ساعت قبل، maraljoon گفته است :

سلام و درود.

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

پست تایپ به اسم book هست  و taxonomy خاص موجود در book هم اسمش new هست.

چطور میشه حلقه ای ساخت که مطالب موجود در این پست تایپ رو نمایش بده؟

ممنون میشم از همراهیتون.. پاینده باشید

http://websoft3.com/پست-تایپ-سفارشی-وردپرس/

لینک به ارسال
در 1 ساعت قبل، Mirrajabi گفته است :

ممنونم از شما.

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

ولی خب با حلقه ای که که تو آموزش شما هست تا حدی جواب گرفتم. همه مطالب موجود در پست تایپ book رو نشون میده.

ولی میخوام مطالب مربوط به taxonomy  خاصی رو نمایش بده. باید چه چیزی به حلقه اضافه کنم؟؟

درواقع یه چیزی مثل دسته مربوط به پست ها.

که دسته موجود در این پست تایپ آیدیش 10 هست.

تشکر

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

سلام و درود

 

$tax_ids = wp_list_pluck(get_terms(array( 
	'taxonomy' => 'new'
)),'term_id');

$args = array(
	'post_type' => 'book',
	'post_status' => 'publish',
	'posts_per_page' => 10,
	'ignore_sticky_posts' => 1,
	'tax_query' => array(
		array(
			'taxonomy' => 'new',
			'terms' => $tax_ids,
			'include_children' => false
		)
	)
);

$query = new WP_Query($args);

خروجی حلقه فوق چیزیه که احتیاج دارید.

 

موفق باشید

لینک به ارسال
در 8 دقیقه قبل، mehran-b گفته است :

سلام و درود

سلام.

تشکر.

متاسفانه جواب نگرفتم. نمیدونم ایراد کارم کجاس.

آیدی دسته مورد نظر در اون پست تایپ رو باید کجا بدم.

آیا حلقه ای که مطالب رو نمایش بده بای  شکل خاصی باشه؟

لینک به ارسال

هدف شما مگه این نیست که تمامی پست هایی را که پست تایپشون book هست و یکی از term های کاستوم تاکسونومی new براش برگزیده شده نمایش داده بشه؟

آیا term خاصی از تاکسونومی new مدنظر دارید یا تمامی term های این تاکسونومی مدنظر هست؟

لینک به ارسال
در 10 دقیقه قبل، mehran-b گفته است :

هدف شما مگه این نیست که تمامی پست هایی را که پست تایپشون book هست و یکی از term های کاستوم تاکسونومی new براش برگزیده شده نمایش داده بشه؟

آیا term خاصی از تاکسونومی new مدنظر دارید یا تمامی term های این تاکسونومی مدنظر هست؟

در مورد term ها چیز زیادی نمیدونم. من کمی بد پرسیدم سوالمو. پوزش

url این قسمت به شکل زیره

wp-admin/edit-tags.php?taxonomy=new&post_type=book

توی new دو دسته وجود داره که تو عکس زیر آوردم.

من میخوام مطالبی رو که توی one هست رو نمایش بدم.

b1d240f2-bb46-4bc6-ad07-0486e22a97fb.jpg

در اقع term ها همون one و tow هستن. درسته؟

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

درود مجدد

 

کد زیر باید جواب بده.

$args = array(
	'post_type' => 'book',
	'post_status' => 'publish',
	'posts_per_page' => 10,
	'ignore_sticky_posts' => 1,
	'tax_query' => array(
		array(
			'taxonomy' => 'new',
			'field' => 'name',
			'terms' => 'one'
		)
	)
);

$query = new WP_Query($args);

 

لینک به ارسال
در 2 ساعت قبل، mehran-b گفته است :

 

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

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

<?php
$args = array(
  'post_type' => 'book',
  'post_status' => 'publish',
  'posts_per_page' => 10,
  'ignore_sticky_posts' => 1,
  'tax_query' => array(
    array(
      'taxonomy' => 'new',
      'field' => 'name',
      'terms' => 'one'
    )
  )
);

$query = new WP_Query($args);

$query = new WP_Query($args);
  $query1 = new WP_Query($my_query);
  while($query1->have_posts()) : $query1->the_post();

?>
<article>
    
    <h3><a href="<?php the_permalink(); ?>"><?php the_title();  ?> </a></h3>
    
    <?php the_post_thumbnail(); ?>

</article>

<?php endwhile; wp_reset_postdata(); ?>

 

لینک به ارسال

بله،  دو تا خط متغیر query$تعریف کردید که باید آون دو تا خط پاک کنید و خط بعدش گذاشتیدکلمه $my_query هم به متغیر $argsتغییر بدید

لینک به ارسال

درود مجدد

 

بله همون طور که جناب @Mirrajabi هم فرمودن اشتباهه.

کد زیر رو تست کنید.

<?php

$args = array(
  'post_type' => 'book',
  'post_status' => 'publish',
  'posts_per_page' => 10,
  'ignore_sticky_posts' => 1,
  'tax_query' => array(
    array(
      'taxonomy' => 'new',
      'field' => 'name',
      'terms' => 'one'
    )
  )
);

$query = new WP_Query($args);

if($query->have_posts()) :
	while($query->have_posts()) :
		$query->the_post();

?>
<article>
    
    <h3><a href="<?php the_permalink(); ?>"><?php the_title();  ?> </a></h3>
    
    <?php the_post_thumbnail(); ?>

</article>

<?php
	endwhile;
	wp_reset_postdata();
endif;
?>

 

موفق باشید

لینک به ارسال
در 3 ساعت قبل، Mirrajabi گفته است :

بله،  دو تا خط متغیر query$تعریف کردید که باید آون دو تا خط پاک کنید و خط بعدش گذاشتیدکلمه $my_query هم به متغیر $argsتغییر بدید

درسته. ممنون از شما

لینک به ارسال
  • 2 سال بعد...

سلام دوستان من این موضوع رو خوندم مشکل منم همینه ولی حل نشد میشه کمک کنید.

من یه پست تایپ سفارشی دارم به نام projects و و یه تاکسونامی براش تعریف کردن به اسم  (projects_tabs) و برای این تاکسونامی چند تا زیر دسته تعریف کردم مثلا یکیش نامکش یا همون slug به اسم (tab1) هست که وقتی ادمین میخواد پست بزاره تو این پست تایپ از قسمت دسته بندی تیک دسته بندی tab1 رو  بزنه و ارسال کنه.

حالا الان میخوام برای یه قسمت از کدها که میخوام تکرار شه حلقه بزنم که برای قسمت tab1 هست و این مدل کد میزنم ولی نتیجه نمیده میشه چک کنید ممنون

 

<?php
$args = array(
    'post_type' => 'projects',
    'tax_query' => array(
        array(
            'taxonomy' => 'projects_tabs',
            'field'    => 'slug',
            'terms'    => 'tab1',
        ),
    ),
);
$query = new WP_Query( $args );
?>					

					
				<?php	while ( $query->have_posts() ) : $query->the_post(); ?>
						<figure class="type-time Competitions new animate__fadeInUp" data-category="Competitions">
						<img src="<?php the_post_thumbnail_url(); ?>" alt="architect-project" class="wow animate__fadeInUp" data-wow-duration="2s">
						<figcaption>
							<strong><?php the_title(); ?></strong>
							<span><span class="icon-zoom-in"></span></span>
						</figcaption>
					</figure>

<?php endwhile; ?>


<?php  wp_reset_postdata(); ?>
ویرایش شده توسط pouya-goharbin
لینک به ارسال

بنظر کدتون درست هست، از تنظیمات نوشته های ارسال شده مطمئن هستید؟

لینک به ارسال

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

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

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

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

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

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

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

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

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