انجمن


نمایش پست تصادفی به جای پست های آخر  (۵ نوشته)

  • khaales

    آفلاین
    عضو
    تعداد نوشته‌ها: ۲۸
    تشکر شده: ۳ بار
    # نوشته شده: ۸ سال پیش
    ۱۵ شهریور ۱۳۹۰ - ۱۲:۱۴

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

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

    اگه راهنمایی کنید خیلی ممنون می شم.

  • amird50

    آفلاین
    عضو
    تعداد نوشته‌ها: ۳۶
    تشکر شده: ۷ بار
    # نوشته شده: ۸ سال پیش
    ۱۵ شهریور ۱۳۹۰ - ۱۴:۵۶

    واسه ی اینکه توی صفحه اول یک مطلب نمایش داده بشه باید از پنل مدیریت بخش تنظیمات -> خواندن رو بزنید و مقدار ( بیشترین تعداد نوشته‌ها در هر برگه‌ی وبلاگ) رو تغییر بدید، برای نمایش مطالب دسته ای خواص هم میتونید از کد زیر در index.php استفاده کنید
    <?php
    $my_query = new WP_Query('showposts=10&cat=2158');
    while ($my_query->have_posts()):
    $my_query->the_post();
    $do_not_duplicate = $post->ID;?>
    "><?php the_title(); ?></br>
    <?php endwhile; ?>

    در showposts=15 به جای 15 میتوانید تعداد مطالبی که میخواهید نمایش داده شود را وارد کنید
    در cat=170 به جای 170 میتوانید ID دسته مورد نظر را وارد کنید
    - کد نمایش مطالب تصادفی هم توی انجمن هست جستجو کنید پیدا میشه.

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    khaales
  • حسین

    آفلاین
    عضو
    تعداد نوشته‌ها: ۷۴
    تشکر شده: ۳۵ بار
    # نوشته شده: ۸ سال پیش
    ۱۵ شهریور ۱۳۹۰ - ۱۸:۳۹

    فکر کنم با این کد میشه همچین کاری کرد.

    <?php $posts = get_posts( "showposts=14&orderby=rand" ); ?>
    <?php if( $posts ) : ?> <?php foreach( $posts as $post ) : setup_postdata( $post ); ?>
     <li><A href="<?php the_permalink() ?>"><?php the_title(); ?></A></li>
    <?php endforeach; ?><?php endif; ?>
  • khaales

    آفلاین
    عضو
    تعداد نوشته‌ها: ۲۸
    تشکر شده: ۳ بار
    # نوشته شده: ۸ سال پیش
    ۱۵ شهریور ۱۳۹۰ - ۱۸:۴۱

    سلام
    ممنون از جوابت

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

    <?php get_header(); ?>
    
    	<div id="posts">
    
    <?php if (have_posts()) : ?>
    
    <?php
    $myposts = get_posts('numberposts=1&orderby=rand');
    foreach($myposts as $post) :
    ?>
    
    		<div class="cada-post">
    <h1><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h1>
    <p id="meta-p"><span class="meta-data"><?php the_time(__('F jS, Y','simple-grey')) ?>, <?php the_time(__('g:i a','simple-grey')) ?></span> <span class="meta-autor"><?php the_author(); ?></span> <span class="meta-comentarios"><?php comments_popup_link(__('No comments','simple-grey'), __('1 comment','simple-grey'), __('% comments','simple-grey')); ?></span></p>
    
    <?php the_content(__('Read the rest of this entry...','simple-grey')); ?>
    
    		</div>
    
    <?php endforeach; ?>
    
    <div id="nav">
    <div class="nav-left"><?php next_posts_link(__('&laquo; Previous Entries','simple-grey')) ?></div>
    <div class="nav-right"><?php previous_posts_link(__('Next Entries &raquo;','simple-grey')) ?></div>
    </div>
    
    </div>
    
    <?php else : ?>
    
    	<div class="cada-post">
    		<h1><?php _e('Not found','simple-grey');?>...</h1>
    
    		<p><?php _e('What you\'re looking for doesn\'t exist, or that isn\'t here','simple-grey');?>...</p>
    
    		<p><?php _e('Use the search form above to try find what you\'re looking for:','simple-grey');?></p>
    
    		<?php include (TEMPLATEPATH . '/searchform.php'); ?>
    
    		<p><?php _e('Thanks!','simple-grey');?></p>
    	</div>
    
    <?php endif; ?>
    
    <?php get_sidebar(); ?>
    
    </div>
    
    <?php get_footer(); ?>

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

    ممنون

  • khaales

    آفلاین
    عضو
    تعداد نوشته‌ها: ۲۸
    تشکر شده: ۳ بار
    # نوشته شده: ۸ سال پیش
    ۱۵ شهریور ۱۳۹۰ - ۲۱:۱۷

    خواستم با این کد امتحان کنم ولی کار نمی کنه نمی دونم چرا؟

    <?php
    $randpost = get_posts('numberposts=1&orderby=rand');
    query_posts( $randpost );
    while (have_posts()) : the_post(); ?>

    query_post مگه پست ها رو به شکلی که می خوایم فیلتر نمی کنه؟ قاعدتا باید این درست باشه نه؟!

درباره‌ی این موضوع



برچسب‌ها

هیچ برچسبی نیست.