سعید شعبانی

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

15 پست در این موضوع قرار دارد

دوستان سلام

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


<?php query_posts('category_name=اسم دسته بندی&showposts=تعداد مطالب'); ?>
<?php while (have_posts()) : the_post(); ?>
<?php endwhile; ?>

به اشتراک گذاری این پست


لینک به پست


<?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>
<a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a>
</li>
</ul>
<?php }
wp_reset_postdata(); ?>


$category = get_category( get_query_var( 'cat' ) );
$cat_id = $category->cat_ID;

من الان مشکلم این هست که نمی دونم این دوتا کد را چجوری باید در هم ادغام کنم.

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

به اشتراک گذاری این پست


لینک به پست

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

به اشتراک گذاری این پست


لینک به پست

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

به اشتراک گذاری این پست


لینک به پست

cat_id رو برابر پارامتر category__in تابع قرار دهید

به اشتراک گذاری این پست


لینک به پست

واقعا دارم گیج می شم نمی فهمم چی به چی شد.

اگر امکان داره یکم واضحتر بگید.

تست کن


<?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(); ?>

به اشتراک گذاری این پست


لینک به پست

تست کن


<?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(); ?>

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

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


<?php foreach(get_the_category() as $category)
{ $thecat = $category->cat_ID; } ?>
<div class="menupost"><?php $result = "<ul class='lcp_catlist'>";
$catposts = get_posts('category='.$thecat."&orderby=title&order=asc&numberposts=".$NUMBEROFPOSTS);
foreach($catposts as $single):
$result .= "<li><a href='";
$result .=get_permalink($single->ID)."'>".$single->post_title."</a></li>";
endforeach;
$result .= "</ul>";
echo $result; ?></div>

فقط مشکلش اینه که من می خواهم خروجی را کد زیر بسازه و نمیدونم باید این کد ها را کجاش بگذارم. ممنون می شم کمکم کنید


<li>
<div class="thuum">
<?php
if ( has_post_thumbnail() ) {?>
<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('thumbnail'); ?></a>
<?php }
else {?>
<a href="<?php the_permalink(); ?>"><img src="<?php bloginfo('template_url'); ?>/images/no-thumbnail.png" /></a>
<?php
}
?>
</div>
<div class="recent_post_det">
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<span class="sitag">
<?php
$posttags = get_the_tags();
$count=0;
if ($posttags) {
foreach($posttags as $tag) {
$count++;
echo '<a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a> ';
if( $count >0 ) break;
}
}
?>
</span>
</div>
</li>

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

به اشتراک گذاری این پست


لینک به پست

<?php
$recent = new WP_Query("cat=the_category_ID()&showposts=5&orderby=asc"); while($recent->have_posts()) : $recent->the_post();?>
<li>
<div class="thuum">
<?php
if ( has_post_thumbnail() ) {?>
<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('thumbnail'); ?></a>
<?php }
else {?>
<a href="<?php the_permalink(); ?>"><img src="<?php bloginfo('template_url'); ?>/images/no-thumbnail.png" /></a>
<?php
}
?>
</div>
<div class="recent_post_det">
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<span class="sitag">
<?php
$posttags = get_the_tags();
$count=0;
if ($posttags) {
foreach($posttags as $tag) {
$count++;
echo '<a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a> ';
if( $count >0 ) break;
}
}
?>
</span>
</div><?php endwhile; ?>
<?php wp_reset_query(); ?>

به اشتراک گذاری این پست


لینک به پست


<?php
$recent = new WP_Query("cat=the_category_ID()&showposts=5&orderby=asc"); while($recent->have_posts()) : $recent->the_post();?>
<li>
<div class="thuum">
<?php
if ( has_post_thumbnail() ) {?>
<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('thumbnail'); ?></a>
<?php }
else {?>
<a href="<?php the_permalink(); ?>"><img src="<?php bloginfo('template_url'); ?>/images/no-thumbnail.png" /></a>
<?php
}
?>
</div>
<div class="recent_post_det">
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<span class="sitag">
<?php
$posttags = get_the_tags();
$count=0;
if ($posttags) {
foreach($posttags as $tag) {
$count++;
echo '<a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a> ';
if( $count >0 ) break;
}
}
?>
</span>
</div><?php endwhile; ?>
<?php wp_reset_query(); ?>

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


<?php foreach(get_the_category() as $category)
{ $thecat = $category->cat_ID; } ?>
<div class="menupost"><?php $result = "<ul class='lcp_catlist'>";
$catposts = get_posts('category='.$thecat."&orderby=title&order=asc&numberposts=".$NUMBEROFPOSTS);
foreach($catposts as $single):
$result .= "<li><a href='";
$result .=get_permalink($single->ID)."'>".$single->post_title."</a></li>";
endforeach;
$result .= "</ul>";
echo $result; ?></div>

ولی من می خواهم خروجی اون توسط کد زیر ساخته بشه. مشکل من در حالا حاظر جایگزاری این کد ها


<li>
<div class="thuum">
<?php
if ( has_post_thumbnail() ) {?>
<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('thumbnail'); ?></a>
<?php }
else {?>
<a href="<?php the_permalink(); ?>"><img src="<?php bloginfo('template_url'); ?>/images/no-thumbnail.png" /></a>
<?php
}
?>
</div>
<div class="recent_post_det">
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<span class="sitag">
<?php
$posttags = get_the_tags();
$count=0;
if ($posttags) {
foreach($posttags as $tag) {
$count++;
echo '<a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a> ';
if( $count >0 ) break;
}
}
?>
</span>
</div>
</li>

در کد زیر است.


<?php foreach(get_the_category() as $category)
{ $thecat = $category->cat_ID; } ?>
<div class="menupost"><?php $result = "<ul class='lcp_catlist'>";
$catposts = get_posts('category='.$thecat."&orderby=title&order=asc&numberposts=".$NUMBEROFPOSTS);
foreach($catposts as $single):
$result .= "<li><a href='";
$result .=get_permalink($single->ID)."'>".$single->post_title."</a></li>";
endforeach;
$result .= "</ul>";
echo $result; ?></div>

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

به اشتراک گذاری این پست


لینک به پست

یعنی اینجوری؟

<?php foreach(get_the_category() as $category)

{ $thecat = $category->cat_ID; } ?>

<div class="menupost"><?php $result = "<ul class='lcp_catlist'>";

$catposts = get_posts('category='.$thecat."&orderby=title&order=asc&numberposts=".$NUMBEROFPOSTS);

foreach($catposts as $single):

?>

<li>

<div class="thuum">

<?php

if ( has_post_thumbnail() ) {?>

<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('thumbnail'); ?></a>

<?php }

else {?>

<a href="<?php the_permalink(); ?>"><img src="<?php bloginfo('template_url'); ?>/images/no-thumbnail.png" /></a>

<?php

}

?>

</div>

<div class="recent_post_det">

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

<span class="sitag">

<?php

$posttags = get_the_tags();

$count=0;

if ($posttags) {

foreach($posttags as $tag) {

$count++;

echo '<a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a> ';

if( $count >0 ) break;

}

}

?>

</span>

</div>

</li>

<?php

endforeach;

$result .= "</ul>";

echo $result; ?></div>

به اشتراک گذاری این پست


لینک به پست

یعنی اینجوری؟

<?php foreach(get_the_category() as $category)

{ $thecat = $category->cat_ID; } ?>

<div class="menupost"><?php $result = "<ul class='lcp_catlist'>";

$catposts = get_posts('category='.$thecat."&orderby=title&order=asc&numberposts=".$NUMBEROFPOSTS);

foreach($catposts as $single):

?>

<li>

<div class="thuum">

<?php

if ( has_post_thumbnail() ) {?>

<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('thumbnail'); ?></a>

<?php }

else {?>

<a href="<?php the_permalink(); ?>"><img src="<?php bloginfo('template_url'); ?>/images/no-thumbnail.png" /></a>

<?php

}

?>

</div>

<div class="recent_post_det">

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

<span class="sitag">

<?php

$posttags = get_the_tags();

$count=0;

if ($posttags) {

foreach($posttags as $tag) {

$count++;

echo '<a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a> ';

if( $count >0 ) break;

}

}

?>

</span>

</div>

</li>

<?php

endforeach;

$result .= "</ul>";

echo $result; ?></div>

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

در صورتی که کد زیر آخرین نوشته های هر دسته را نشان می هد


<?php foreach(get_the_category() as $category)
{ $thecat = $category->cat_ID; } ?>
<div class="menupost"><?php $result = "<ul class='lcp_catlist'>";
$catposts = get_posts('category='.$thecat."&orderby=title&order=asc&numberposts=".$NUMBEROFPOSTS);
foreach($catposts as $single):
$result .= "<li><a href='";
$result .=get_permalink($single->ID)."'>".$single->post_title."</a></li>";
endforeach;
$result .= "</ul>";
echo $result; ?></div>

به اشتراک گذاری این پست


لینک به پست

<?php foreach(get_the_category() as $category)

{ $thecat = $category->cat_ID; } ?>

<div class="menupost"><?php $result = "<ul class='lcp_catlist'>";

$catposts = get_posts('category='.$thecat."&orderby=title&order=asc&numberposts=".$NUMBEROFPOSTS);

foreach($catposts as $single):

?>

<li>

<div class="thuum">

<?php

if ( has_post_thumbnail() ) {?>

<a href="<?php echo get_permalink($single->ID); ?>"><?php echo get_the_post_thumbnail( $single->ID, 'thumbnail' ); ?></a>

<?php }

else {?>

<a href="<?php echo get_permalink($single->ID); ?>"><img src="<?php bloginfo('template_url'); ?>/images/no-thumbnail.png" /></a>

<?php

}

?>

</div>

<div class="recent_post_det">

<a href="<?php echo get_permalink($single->ID); ?>"><?php echo get_the_title($single->ID); ?></a>

<span class="sitag">

<?php

$posttags = get_the_tags($single->ID);

$count=0;

if ($posttags) {

foreach($posttags as $tag) {

$count++;

echo '<a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a> ';

if( $count >0 ) break;

}

}

?>

</span>

</div>

</li>

<?php

endforeach;

$result .= "</ul>";

echo $result; ?></div>

به اشتراک گذاری این پست


لینک به پست

<?php foreach(get_the_category() as $category)

{ $thecat = $category->cat_ID; } ?>

<div class="menupost"><?php $result = "<ul class='lcp_catlist'>";

$catposts = get_posts('category='.$thecat."&orderby=title&order=asc&numberposts=".$NUMBEROFPOSTS);

foreach($catposts as $single):

?>

<li>

<div class="thuum">

<?php

if ( has_post_thumbnail() ) {?>

<a href="<?php echo get_permalink($single->ID); ?>"><?php echo get_the_post_thumbnail( $single->ID, 'thumbnail' ); ?></a>

<?php }

else {?>

<a href="<?php echo get_permalink($single->ID); ?>"><img src="<?php bloginfo('template_url'); ?>/images/no-thumbnail.png" /></a>

<?php

}

?>

</div>

<div class="recent_post_det">

<a href="<?php echo get_permalink($single->ID); ?>"><?php echo get_the_title($single->ID); ?></a>

<span class="sitag">

<?php

$posttags = get_the_tags($single->ID);

$count=0;

if ($posttags) {

foreach($posttags as $tag) {

$count++;

echo '<a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a> ';

if( $count >0 ) break;

}

}

?>

</span>

</div>

</li>

<?php

endforeach;

$result .= "</ul>";

echo $result; ?></div>

خودشه از همگی دوستان متشکرم که من رو راهنماییی کردند

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط mehdiilbeigi
      سلام
      دوستان من یک دسته مادر خاص دارم مثلا شبکه های تلوزیونی با زیرمجمعه هایی مثل شبکه سه و شبکه 2 و ...
      حالا می خوام توی پستم زیرمجموعه های دسته شبکه های تلوزیونی رو که تیکش و زدم نمایش بده و با , جدا کنه.
      ممنون می شم راهنمایی کنید.
    • توسط miraziz
      سلام
      دوستان چگونه می توان پستی را برای دسته ای خاص به عنوان پست ثابت ایجاد کرد. یعنی وقتی کاربر به آن دسته می رود همیشه یک پست به صورت ثابت نمایش داده شود.

      توضیح بیشتر: البته با افزونه هایی می توان پستی را ثابت کرد ولی این روش تنها برای صفحه ی اصلی سایت است. ولی منظور من ایجاد پست های ثابت متفاوت برای دسته های متفاوت است
    • توسط kingr2r
      با سلام و عرض ادب
       
      عزیزان من بخش دسته ها در وردپرسم مشکل پیدا کرده . یعنی میزنم روش صفحه سفید میشه . به نظر مشکل از چیه ؟ و سوالم اینه که ایا از جای دیگه ای میشه دسته اضافه کرد . از هاست یا بخش ویرایش ؟ الان همین دسته ها که میسازیم در چه فایلی در هاست قرار میگیره ؟ با تشکر
    • توسط amir80
      سلام
      من میخوام در نوشته های سایتم فقط سطح اول دسته ها نمایش داده بشه. یعنی دسته هایی که زیرمجموعه هستند رو نمایش نده.
      اما هرکاری کردم نشد و زیر مجموعه ها رو هم نمایش میده.
      لطفا اگر میتونید کمک کنید تا مشکلم حل شه.
      متشکرم
    • توسط chaishpish
      سلام اساتید راهی هست که بتونم  مطلب رو توی دسته خودش فقط نمایش بدم یعنی من مطلب جدید میزارم به اول صحفه نیاد فقط تو همون دسته نشون داده بشه آیا روشی هست؟