Shoresh Mostafa
4 سال پیش توسط Shoresh Mostafa مطرح شد
6 پاسخ

مشکل دریافت اطلاعات GET در صفحات وردپرس

سلام خدمت اساتید محترم . یه مشکلی دارم بنده مبتدی هستم در وردپرس . بنده یه دیتارو (دسته بندی پست ها ) از طریق یه url ارسال میکنم به یه صفحه . مقدار تعریف شده GET رو میتونم بگیرم در واقع دسته بندی هارو . ولی وقتی ذخیره اش میکنم میخوام بریزمش توی آرایه ورودی wpquery() انگار دسته بندی ها اعمال نمیشه و کلیه پست هارو میاره تو صفحه singular.php . ممنون میشم کمک کنید . اینم کد هاییه که توی صفحه singular نوشتم برای پست ها :

<?php               

if(isset($_GET['cat'])){
  $category = $_GET['cat'] ; 
}

$a = array( 'cat'=> $category ,  'posts_per_page'   =>10,'post_status' => 'publish');

$the_query=new WP_Query($a);
if ($the_query-> have_posts() ) {
    while ($the_query-> have_posts() ) {

        $the_query->the_post(); 
        get_template_part('template_part/content_single') ; 
    }
  }else{
    get_template_part('template_part/content_single','none') ;
  }

?>

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


ثبت پرسش جدید
محمد
تخصص : Laravel
@mprogrammer7 4 سال پیش مطرح شد
1

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

<?php get_header(); ?>
 <?php while(have_posts()) : the_post();?>
   <a href="<?php the_permalink(); ?>">
                    <img src="<?php the_post_thumbnail_url(); ?>" class="img-fluid borderradius rounded-bottom">
                    <h3 class="d-flex justify-content-center align-items-center py-3"><small><?php the_title(); ?></small></h3>
                </a>
 <?php endwhile; ?>
<?php get_footer(); ?>

محمد
تخصص : Laravel
@mprogrammer7 4 سال پیش مطرح شد
1

سلام
شما هدفتون چیه می خواهید تمام دسته بندی های پست هارو نشون بدید در یک صفحه ؟
@m.shoresh77


Shoresh Mostafa
تخصص : FRONT-END
@m.shoresh77 4 سال پیش مطرح شد
0

میخوام که پست های مربوط به هر دسته بندی رو توی صفحه singular نشون بدم .
@mrn


محمد
تخصص : Laravel
@mprogrammer7 4 سال پیش مطرح شد
1

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

<?php get_header(); ?>
 <?php while(have_posts()) : the_post();?>
   <a href="<?php the_permalink(); ?>">
                    <img src="<?php the_post_thumbnail_url(); ?>" class="img-fluid borderradius rounded-bottom">
                    <h3 class="d-flex justify-content-center align-items-center py-3"><small><?php the_title(); ?></small></h3>
                </a>
 <?php endwhile; ?>
<?php get_footer(); ?>

Shoresh Mostafa
تخصص : FRONT-END
@m.shoresh77 4 سال پیش مطرح شد
0

یعنی خودش تفکیک میکنه ؟


محمد
تخصص : Laravel
@mprogrammer7 4 سال پیش مطرح شد
1

برای اینکه پست های مرتبط رو بر اساس دسته بندی در زیر هر پست نشون بدید در فایل single.php که نوشته هارو نشون میده بعد از حلقه که برای نمایش پست زدید و حلقه رو بستید در پایین پست این کوئری بزنید

               <?php
                $related = get_posts( array( 
                    'category__in' => wp_get_post_categories($post->ID),
                    'numberposts' => 4,'post_type' => 
                    'post', 'post__not_in' => array($post->ID) ) );
                    if( $related ) 
                        foreach( $related as $post ) {
                            setup_postdata($post); ?>
                <div class="col-6 col-md col-lg p-1 useful-post">
                    <a href="<?php the_permalink(); ?>">
                        <div class="col ">
                            <img src="<?php the_post_thumbnail_url(); ?>" class="img-fluid borderradius">
                        </div>
                        <div class="col mt-3 p-0">
                            <h5 class="text-dark"><small><?php the_title(); ?></small></h5>
                        </div>
                    </a>
                </div>
                <?php } wp_reset_postdata();  ?>

Shoresh Mostafa
تخصص : FRONT-END
@m.shoresh77 4 سال پیش مطرح شد
0

خیلی ممنون از شما . کار کرد .
😍😍😍
@mrn


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام