رفتن به مطلب

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


IMDe

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

سلام .

ببخشید یه سوال داشتم . خودم البته گشتم چیزی دستگیرم نشده !

بنده یک کد مطالب مرتبط در سایتم قرار دادم که اهرا از روی برچسب ها کار میکنه . مطالب سایت من دسته بندی هستند و برای دسته بندیشون در برچسب ها هم از برچسب یکسان استفده میکنم ( به غیراز برچسب های مخصوص خود پست تکراری هم قرار میدم )

اما در هر پست جدید ترین مطالب با اون برچسب رو نشون میده . من میخوام به صورت رندوم نمایش بده آیا راهی هست ؟ یعنی اینکه تمامی مطالب با برچسب یکسان رو نشون بده اما به صورت رندوم . امیدوارم درست مغهموم رو رسونده باشم .

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


<?php
$related = get_posts( array( 'category__in' => wp_get_post_categories($post->ID), 'numberposts' => 5, 'post__not_in' => array($post->ID) ) );
if( $related ) foreach( $related as $post ) {
setup_postdata($post); ?>
<ul>
<li>
<h4> » <a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h4>
</li>
</ul>
<?php }
wp_reset_postdata(); ?>

لینک به ارسال

<ul>
<?php
$args = array( 'numberposts' => 5, 'orderby' => 'rand' );
$rand_posts = get_posts( $args );
foreach( $rand_posts as $post ) : ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
</ul>

لینک به ارسال

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

مثلا مطلبی که در دسته ی اخبار ارسال کردم ، در ادامه ی مطلبش ، پست ها رو به صورت رندوم نشون بده . آیا هست چنین کدی ؟

لینک به ارسال


<?php $recent = new WP_Query("cat=1&showposts=5&orderby=rand"); while($recent->have_posts()) : $recent->the_post();?>
<li><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title();?></a></li>
<?php endwhile; ?>
<?php wp_reset_query(); ?>

تست کنید

لینک به ارسال

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


$cat_id=the_category_ID()

را به اول کدهای php اضافه کنید و cat را برابر با $cat_id قرار بدید

لینک به ارسال

نشد . نمیدونم شاید درست نرسوندم منظورمو .

ببینید من سایتم اینه : imde.ir

دارای دست ههای مختلفی مثل تریلر فیلم ، نقد ، مصاحبه ، اخبار ، معرفی فیلم ، معرفی سریال و ... هستش .

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

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

و اگه یکی از مطالب در دسته ی معرفی فیلم رو باز کنه ، مطالب رندوم دسته ی معرفی فیلم براش نشون داده بشه .

و ...

ممنون میشم . البته کدهایی هم که دادین کار میکنه اما فقط برای یک دسته هست . در کد دومی ( در پاسخ دومتون ) که دادین میشه فقط یک دسته رو مشخص کرد تا مطالب اون دسته رو رندوم نشون بده .

تشکر :wub:

لینک به ارسال

کد سوم رو برا همین دادم


<?php

$cat_id=the_category_ID();
$recent = new WP_Query("cat=$cat_id&showposts=5&orderby=rand"); while($recent->have_posts()) : $recent->the_post();?>
<li><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title();?></a></li>
<?php endwhile; ?>
<?php wp_reset_query(); ?>


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

لینک به ارسال

عالیه ... ممنون ....

اما یه مشکل هم هنوز هست ! آی دی دسته رو نشون میده ! چند تا ویرایشش هم کردم اما به هم ریخت . مثلا لینک زیر رو ببینید :

کلیک کنید /....

آی دی دستش هم میاد . ممنون میشم اینم بگید چطوری مخفیش کنم دیگه کامل کامل مرسی میشه :D:rolleyes:

لینک به ارسال

<?php
$recent = new WP_Query("cat=the_category_ID()&showposts=5&orderby=rand"); while($recent->have_posts()) : $recent->the_post();?>
<li><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title();?></a></li>
<?php endwhile; ?>
<?php wp_reset_query(); ?>

لینک به ارسال

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

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

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

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

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

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

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

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

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