2016-03-21 8 views
0

カスタムポストタイプを使用してページングを使用してポストを取得するためのショートコードを作成しましたが、うまくいきますが、ページングスライダを使用して2ページ目に移動すると、私が使用しているコード:第2ページのスライダがページングに表示されない

<?php function artistCategoryFunction($args){ 
         global $wpdb; 
         global $posts; 
         $term = get_term($args['categoryid'],'artists_category'); 
         $name = $term->slug; 
         $catId = explode(',',$args['categoryid']); 
         $perPage = $args['post_per_page']; 
         $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 
         $posts_array = new WP_Query(
         $data = array(
          'posts_per_page' => $perPage, 
          'post_type' => 'artists', 
          'paged' => $paged, 
          'tax_query' => array(
           array(
            'taxonomy' => 'artists_category', 
            'field' => 'term_id', 
            'terms' => $catId, 
            'operator'=> 'IN' 

           ) 
          ) 
         ) 
        ); 
         //echo '<pre>';print_r($posts_array->posts); 
         $grid = '<div class="category"><ul>'; 
        if ($posts_array->have_posts()) : while ($posts_array->have_posts()) : $posts_array->the_post(); 
           $post_id = $values->ID; 
           $title = get_the_title(); 
           $thisposts = get_post($post_id); 
           $thisposts = $thisposts->post_name; 
           $mobile_img = get_field('featured_mobile_image'); 
           $content = get_field('description_(short)'); 
           $feature_img = wp_get_attachment_url(get_post_thumbnail_id()); 
            if($mobile_img == '') 
            { 
            $mobile_img = $feature_img; 
            } 
            else{ 
            $mobile_img; 
            } 
        $grid .= '<li><div class="cate-box"> 
            <div class="cate-pic"><a href="/artists/'.$name.'/'.$thisposts.'"><img src="'.$mobile_img.'" alt=" "></a></div> 
            <div class="cate-ctn"> 
            <h4>'.$title.'</h4><p>'.$content. 
            '</p><span class="read-box"><a href="/artists/'.$name.'/'.$thisposts.'" class="read">read more</a></span> 
             </div></div></li>'; 
            endwhile;endif;wp_reset_query(); 
            $total_pages = $posts_array->max_num_pages; 
            if ($total_pages > 1){ 
            $current_page = max(1, get_query_var('paged')); 
         $grid .= '<div class="page_nav">'; 
         $grid .= paginate_links(array(
          'base' => get_pagenum_link(1) . '%_%', 
          'format' => 'page/%#%', 
          'current' => $current_page, 
          'total' => $total_pages, 
          'prev_text' => 'Prev', 
          'next_text' => 'Next' 
         )); 
         $grid .= '</div>'; 
        } 
            $grid .= '</ul></div>'; 
            return $grid; 
        } 
        add_shortcode('artistGrid','artistCategoryFunction');?> 

答えて

0

私は私のサイトのいずれかにまねた問題を持っていて、私の場合にはproblamは、その値が取られた方法で$paged変数とよりprecicelyにありました。

あなたはそれが私の作品、このコードを試すことができます。これについては何

$paged = get_query_var('paged') ?: (get_query_var('page') ?: 1); 
+0

私はこれを使用していると:(そのため申し訳ありません –

+0

を働いていない、それは私の作品:今、あなたは、クエリをリセットした後。 '$ total_pages'を' max_num_pages'プロパティで取得しようとしています。最初に '$ total_pages'と' wp_reset_query() 'を得るとどうなりますか? – pgk

関連する問題