Intereting Posts

Запрос по категориям и настраиваемое поле – Shortcode

Я работаю над коротким кодом для запроса по определенной категории и отображаю все сообщения в категории, если заполнено указанное настраиваемое поле. То, что я создал до этого момента, было начато с кода, который я нашел, и внес изменения в соответствии с моими потребностями.

Я обновил код, используя $ query. = '& Meta_key ='. $ Custom_field; и это позаботилось об основной проблеме.

Я не могу получить разбивку на страницы.

Есть идеи?

Я рассматривал другие варианты вместо использования «extract», но я не могу заставить любой другой массив работать.

function custom_query_category($atts, $content = null) { extract(shortcode_atts(array( "pagination" => 'true', "query" => '', "category" => '', "custom_field" => '', ), $atts)); global $wp_query,$paged,$post; $temp = $wp_query; $wp_query= null; $wp_query = new WP_Query(); if($pagination == 'true'){ $query .= '&paged='.$paged; } if(!empty($category)){ $query .= '&category_name='.$category; } if(!empty($custom_field)){ $query .= '&meta_key='.$custom_field; } if(!empty($query)){ $query .= $query; } $wp_query->query($query); ob_start(); while ($wp_query->have_posts()) : $wp_query->the_post(); if ( strlen(get_post_meta($post->ID, $custom_field, true)) > 0 ) { //Used to check the Custom Field to see if it is populated ?> <div style="margin:10px 0 30px;"></div> <a href="<?php the_permalink() ?>"> <h3 style="margin:0 0 10px 0;"><?php echo the_title(); ?></h3> <div class="one-third-width-responsive"> <?php echo the_post_thumbnail( 'large' ); ?> </div> <div class="two-third-width-responsive"> </a> <div style="font-size:15px;"><?php echo get_post_meta($post->ID, $custom_field, true); ?></div> //Displays Custom Field Value </div> <?php } else {} ?> <div class="clearfix"></div> <?php endwhile; ?> <div style="margin-top:35px;"></div> <?php if(pagination == 'true'){ ?> <div class="navigation" style="margin:20px 0 35px 0;"> <div class="alignleft"><?php previous_posts_link('« Previous') ?></div> <div class="alignright"><?php next_posts_link('More »') ?></div> </div> <?php } ?> <?php $wp_query = null; $wp_query = $temp; $content = ob_get_contents(); ob_end_clean(); return $content; } add_shortcode("custom_query_category", "custom_query_category"); ?>