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

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

مثلا یه کادری هست و داخل اون مطالب مشابه قرار میگیره . وقتی مطالب مشابه وجود نداشته باشه هنوز عنوان با کادرشو نشون میده . دستور شرطی هست که بزارم به اگر مطالب مشابهی نبود اصلا نشون نده ؟

0

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


لینک به پست

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

اگر هم شرطی نبود سورس اون قسمت رو بزارید تا راهنماییتون کنند.

0

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


لینک به پست

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

<?php $related = related_posts(); ?>
<?php if ( $related->have_posts() ): ?>

که تو این مثال related_posts تابعیه که مطالب مرتبط رو برمی گردونه، اون شرط هم چک می کنه که آیا این تابع مقدار داره یا نه!

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

موفق باشیـــــد

2

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


لینک به پست

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

اگر هم شرطی نبود سورس اون قسمت رو بزارید تا راهنماییتون کنند.

ببینید اینکل دستورات مربوط به نمایش مطالب مشابه بنده هست که به صورت یک صفحه به نام similar.php ذخیره کردم


<?php
$backup = $post;
$tags = wp_get_post_tags($post->ID);
if ($tags) {
$tag_ids = array();
foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id;

$args=array(
'tag__in' => $tag_ids,
'post__not_in' => array($post->ID),
'showposts'=>6, // Number of related posts that will be shown.
'caller_get_posts'=>1
);

$my_query = new wp_query($args);
if( $my_query->have_posts() ) {

while ($my_query->have_posts()) {
$my_query->the_post();
?>
<div class="similarpost">
<div class="similar-avatar">
<a href="<?php the_permalink() ?>"> <img src="<?php bloginfo('stylesheet_directory'); ?>/timthumb.php?src=<?php get_image_url(); ?>&h=64&w=64&zc=1" title="<?php the_title(); ?>" /></a>
</div>
<h4><a href="<?php the_permalink() ?>"><?php limit_title($post->post_title, 50); ?></a></h4>
<p><i class="post-date fa-comment-o d-1x"></i><?php comments_popup_link('دیدگاه', '1 دیدگاه', '%دیدگاه'); ?></p>
<p><i class="post-date fa-eye d-1x"></i>تعداد نمایش : <?php setPostViews(get_the_ID()); ?><?php echo getPostViews(get_the_ID()); ?></p>

</div>

<?php
}
}
}
$post = $backup;
wp_reset_query();
?>

برای نمایش صفحه similar تو single اینجوری عمل کردم


<div class="similar">
<h3><i class="freico fa-star sim-lg"></i>همچنین بخوانید</h3>
<?php include (TEMPLATEPATH . '/similar.php'); ?>
</div>

حالا مشکل همینجاست چون اون عنوان " همچنین بخوانید " و div ها رو در صورتی که مطلب مشابهی وجود نداشته باشه نشون میده باز

در خود دستورات مربوط به صفحه similar شرطهایی هست تا در صورت نبود مطالب مشابه اون رو نشون نده . من نمیدونم دقیقا این شرط صفحه similar کجا قرار داره تا من کل این div ها و عنوان رو منتقل کنم داخل شرط تا شرط شامل اونها هم باشه .

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

0

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


لینک به پست

گفتم من تو کدنویسی php خیلی حرفه ای نیستم ^_^

ولی تا موقعی که یکی پیدا بشه جواب بده شما می تونین اینو امتحان کنین ببینین حل میشه مشکلتون یا نه

اینو به جای کد اول

<?php
$backup = $post;
$tags = wp_get_post_tags($post->ID);
if ($tags) {
$tag_ids = array();
foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id;
$args=array(
'tag__in' => $tag_ids,
'post__not_in' => array($post->ID),
'showposts'=>6, // Number of related posts that will be shown.
'caller_get_posts'=>1
);
$my_query = new wp_query($args);
if( $my_query->have_posts() ) { ?>
<div class="similar">
<h3><i class="freico fa-star sim-lg"></i>همچنین بخوانید</h3>
<?php
while ($my_query->have_posts()) {
$my_query->the_post();
?>
<div class="similarpost">
<div class="similar-avatar"> <a href="<?php the_permalink() ?>"> <img src="<?php bloginfo('stylesheet_directory'); ?>/timthumb.php?src=<?php get_image_url(); ?>&h=64&w=64&zc=1" title="<?php the_title(); ?>" /></a> </div>
<h4><a href="<?php the_permalink() ?>">
<?php limit_title($post->post_title, 50); ?>
</a></h4>
<p><i class="post-date fa-comment-o d-1x"></i>
<?php comments_popup_link('دیدگاه', '1 دیدگاه', '%دیدگاه'); ?>
</p>
<p><i class="post-date fa-eye d-1x"></i>تعداد نمایش :
<?php setPostViews(get_the_ID()); ?>
<?php echo getPostViews(get_the_ID()); ?></p>
</div>
<?php } ?>
</div>
<?php
}
}
$post = $backup;
wp_reset_query();
?>

و اینو هم به جای کد دوم بذارین

<?php include (TEMPLATEPATH . '/similar.php'); ?>

موفق باشیـــــد

2

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


لینک به پست

گفتم من تو کدنویسی php خیلی حرفه ای نیستم ^_^

ولی تا موقعی که یکی پیدا بشه جواب بده شما می تونین اینو امتحان کنین ببینین حل میشه مشکلتون یا نه

اینو به جای کد اول

<?php
$backup = $post;
$tags = wp_get_post_tags($post->ID);
if ($tags) {
$tag_ids = array();
foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id;
$args=array(
'tag__in' => $tag_ids,
'post__not_in' => array($post->ID),
'showposts'=>6, // Number of related posts that will be shown.
'caller_get_posts'=>1
);
$my_query = new wp_query($args);
if( $my_query->have_posts() ) { ?>
<div class="similar">
<h3><i class="freico fa-star sim-lg"></i>همچنین بخوانید</h3>
<?php
while ($my_query->have_posts()) {
$my_query->the_post();
?>
<div class="similarpost">
<div class="similar-avatar"> <a href="<?php the_permalink() ?>"> <img src="<?php bloginfo('stylesheet_directory'); ?>/timthumb.php?src=<?php get_image_url(); ?>&h=64&w=64&zc=1" title="<?php the_title(); ?>" /></a> </div>
<h4><a href="<?php the_permalink() ?>">
<?php limit_title($post->post_title, 50); ?>
</a></h4>
<p><i class="post-date fa-comment-o d-1x"></i>
<?php comments_popup_link('دیدگاه', '1 دیدگاه', '%دیدگاه'); ?>
</p>
<p><i class="post-date fa-eye d-1x"></i>تعداد نمایش :
<?php setPostViews(get_the_ID()); ?>
<?php echo getPostViews(get_the_ID()); ?></p>
</div>
<?php } ?>
</div>
<?php
}
}
$post = $backup;
wp_reset_query();
?>

و اینو هم به جای کد دوم بذارین

<?php include (TEMPLATEPATH . '/similar.php'); ?>

موفق باشیـــــد

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

0

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


لینک به پست

گفتم من تو کدنویسی php خیلی حرفه ای نیستم

^_^

ولی تا موقعی که یکی پیدا بشه جواب بده شما می تونین اینو امتحان کنین ببینین حل میشه مشکلتون یا نه

اینو به جای کد اول

پاسختون درسته

2

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


لینک به پست

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

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

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

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


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

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

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


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

  • مطالب مشابه

    • توسط unid_user
      سلام و درود
      دوستان گرامی ، در فایل header.php دو تا فرم جستجو جدا از هم نوشتم که یکی فقط برای محصولات ووکامرس و دیگری فقط برای مقالات وردپرس هست.
      من میخوام اگه داخل صفحه فروشگاه بودم فقط فرم جستجویی رو نشون بده که برای محصولات ساخته شده.
      از چه کدهایی باید استفاده کنم؟
      با تشکر و سپاس
    • توسط m.Mosibat
      سلام
      من برای نمایش مطالب مشابه از کوئری زیر استفاده میکنم که آخرین مطالب دسته رو نمایش میده. اما متاسفانه یک مشکل کوچیک داره اونم اینه که برای مطالب جدید خود مطلب رو هم نمایش میده.
      خواستم ببینم راهی هست که بشه کاری کرد که خود مطلب توی نتیجه کد ظاهر نشه ؟


      <?php $category = get_the_category(); $category = $category[0]->cat_ID;?>
      <?php $recent = new WP_Query("cat=$category&showposts=4"); while ($recent->have_posts()) : $recent->the_post(); ?>

    • توسط m.Mosibat
      با سلام
      من از یک قالب استفاده میکنم که برای مطالب مشابه خودش یک کد خوب داره همراه با تنظیماتی که میشه از طریق قالب مدیریتش کرد.
      حالا میخوام یکم از حلقه های شرطی کد کم بشه و کد تا حدودی شخصی تر بشه
      ممنون میشم دوستانی که تخصص دارن کمک کنند.
      کد اینه :


      <?php if(of_get_option('related_enable') != false) : ?>
      <h4 class="related_box_title">مطالب مشابه :</h4>
      <div class="related_box">
      <ul class="<?php echo of_get_option('related_style'); ?>">
      <?php if (of_get_option('related_type') == 'tags' ) { ?>
      <?php
      global $post;
      $tags = wp_get_post_tags($post->ID);
      if ($tags) :
      $tag_ids = array();
      foreach($tags as $individual_tag){ $tag_ids[] = $individual_tag->term_id;}
      $args=array(
      'tag__in' => $tag_ids,
      'post__not_in' => array($post->ID),
      'showposts'=> of_get_option('related_count'),
      'ignore_sticky_posts'=>1
      );
      query_posts($args);
      ?>
      <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
      <?php if(of_get_option('related_style') == 'default') { ?>
      <li class="related_item">
      <?php if(mom_post_image() == false) {} else { ?>
      <div class="related_image">
      <a href="<?php the_permalink(); ?>">
      <img src="<?php echo MOM_SCRIPTS ?>/timthumb.php?src=<?php echo mom_post_image(); ?>&h=91&w=126&zc=1" alt="<?php the_title(); ?>" title="<?php the_title(); ?>" />
      </a>
      </div> <!--Related Image-->
      <?php } ?>
      <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
      </li>
      <?php } else { ?>
      <li class="related_list">
      <h4><a href="<?php the_permalink(); ?>"><span><?php _e('»', 'theme'); ?></span><?php the_title(); ?></a></h4>
      </li>
      <?php } ?> <!--End Related Style-->
      <?php endwhile; ?>
      <?php else: ?>
      <h5><?php echo __('There is no related posts.', 'theme'); ?></h5>
      <?php endif; ?>
      <?php wp_reset_query(); ?>
      <?php endif;?>
      <?php } else { ?>
      <?php
      global $post;
      $cats = get_the_category($post->ID);
      if ($cats) :
      $cat_ids = array();
      foreach($cats as $individual_cat){ $cat_ids[] = $individual_cat->cat_ID;}

      $args=array(
      'category__in' => $cat_ids,
      'post__not_in' => array($post->ID),
      'showposts'=>of_get_option('related_count'),
      'ignore_sticky_posts'=>1
      );
      query_posts($args);
      ?>
      <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
      <?php if(of_get_option('related_style') == 'default') { ?>
      <li class="related_item">
      <?php if(mom_post_image() == false) {} else { ?>
      <div class="related_image">
      <a href="<?php the_permalink(); ?>">
      <img src="<?php echo MOM_SCRIPTS ?>/timthumb.php?src=<?php echo mom_post_image(); ?>&h=91&w=126&zc=1" alt="<?php the_title(); ?>" title="<?php the_title(); ?>" />
      </a>
      </div> <!--Related Image-->
      <?php } ?>

      <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
      </li>
      <?php } else { ?>
      <li class="related_list">
      <h3><a href="<?php the_permalink(); ?>"><span><?php _e('»', 'theme'); ?></span><?php the_title(); ?></a></h3>
      </li>
      <?php } ?> <!--End Related Style-->
      <?php endwhile; ?>
      <?php else: ?>
      <h5><?php echo __('There is no related posts.', 'theme'); ?></h5>
      <?php endif; ?>
      <?php wp_reset_query(); ?>
      <?php endif;?>
      <?php } ?>
      </ul>
      </div> <!--Related Box-->
      <?php endif; ?>
      <!--Related Enable-->

      در این قالب امکان انتخاب دو نوع نمایش مطالب مرتبط بر حسب تگ ها یا بر حسب موضوعات وجود داره میخوام تا جایی که ممکنه همین کد اصلاح بشه به طوری که قسمت شرطی موجود برای تگ ها حذف بشه و مطالب مشابه بر اساس موضوعات نمایش داده بشن.
      نکته بعدی که از دوستان میخوام کمک کنند در تنظیمات قالب دو انتخاب برای شیوه نمایش عکس در مطالب مشابه وجود داره یکی از طریق تصویر شاخص و دیگری از طریق اسکریپت Timthumb میخوام قسمت شرطی اینجا هم برداشته بشه و از طریق همون timtumb عکس مطالب مشابه نمایش داده بشه
      دوستان میخوام کد کلاً هیچ ارتباطی با دیتابیس تنظیمات قالب نداشته باشه به خاطر افزایش کارایی قالب و کاهش درخواست های سرور.
      ممنون میشم