2016-05-05 2 views
0

Теперь я попытался перейти pdf-market.ir/?paged=2, но это шоу 404 Ошибка! проверка сайта, sitesearchwp pagination dont показать на главной странице

я 1Day пытался решить эту проблему, но не succed. моих коды для цикла в index.php

<ul class="page_result"> 
       <?php 
       //$paged = (get_query_var('page')) ? get_query_var('page') : 1; 
     $args = array(
      'post_type' => 'product', 
      'stock' => 1, 
      'posts_per_page' => 16, 
      'orderby' => 'date', 
      'order' => 'DESC', 
      'paged' => 1, 
      ); 
     $loop = new WP_Query($args); 
     while ($loop->have_posts()) : $loop->the_post(); global $product; ?> 
      <div class="bookbox"> 
       <a id="id-<?php the_id(); ?>" href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"> 
      <div class="bookbox-img"> 
       <?php if (has_post_thumbnail($loop->post->ID)) echo get_the_post_thumbnail($loop->post->ID, 'shop_catalog'); else echo '<img src="'.woocommerce_placeholder_img_src().'" alt="Placeholder" style="margin-left: -20px" width="200px" height="200px" />'; ?> 
       </div> 
       </a> 
       <div class="bookbox-bookname"><a data-tooltip="<?php the_title(); ?>" class="bookname tooltip" href="<?php the_permalink(); ?>"><?php the_title(); ?></a></div> 
         <?php $mid_var = get_post_meta($post->ID, 'پدیداورنده',true); 
      if(isset($mid_var) && !empty($mid_var)) : ?> 
       <div class="bookbox-dtibook"><span class="garyYekan10">پدیدآورنده:</span> 
      <?php echo get_post_meta($post->ID, 'پدیداورنده',true); ?> 
      </div><?php endif; ?> 
        <?php $mid_var = get_post_meta($post->ID, 'ناشر',true); 
      if(isset($mid_var) && !empty($mid_var)) : ?> 
       <div class="bookbox-dtibook"><span class="garyYekan10">ناشر: </span> 
      <?php echo get_post_meta($post->ID, 'ناشر',true); ?> 
       </div> 
       <?php endif; ?> 
        <?php $mid_var = get_post_meta($post->ID, 'نوبت چاپ',true); 
      if(isset($mid_var) && !empty($mid_var)) : ?> 
       <div class="bookbox-dtibook"><span class="garyYekan10">نوبت چاپ:</span> 
       <?php echo get_post_meta($post->ID, 'نوبت چاپ',true); ?> 
       </div> 
      <?php endif; ?> 
       <div class="bookbox-price"><span class="garytahoma8">قیمت: </span> <?php woocommerce_template_loop_price() ?> </div> 
        <?php $mid_var = get_post_meta($post->ID, 'موجودی',true); 
      if(isset($mid_var) && !empty($mid_var)) : ?> 
       <div class="bookbox-price"><span class="garytahoma8">موجودی: </span><span class="fontgreen10"> 
      <?php echo get_post_meta($post->ID, 'موجودی',true); ?> 
       </span> </div><?php endif; ?> 
       <a alt="مشخصات کتاب" href="<?php the_permalink(); ?>"><div title="مشخصات کتاب" alt="مشخصات کتاب" class="bookbox-bookinfo"></div></a> 
       <a alt="خرید کتاب" href="<?php the_permalink(); ?>&add-to-cart=<?php the_id(); ?>"> 
       <div alt="خرید کتاب" class="bookbox-addcart"></div> 
       </a> 


       </div> 

     <?php endwhile; ?> 
     <?php wp_reset_postdata(); ?> 
</ul> 

<div class="pagination"> 
    <?php 
    wp_pagination(); ?> 
</div> 

и мой код в function.php> пагинации

<?php 
function wp_pagination() { 
    global $wp_query; 
    $big = 12345678; 
    $page_format = paginate_links(array(
     'base' => str_replace($big, '%#%', esc_url(get_pagenum_link($big))), 
     'format' => '?paged=%#%', 
     'current' => max(1, get_query_var('paged')), 
     'total' => $wp_query->max_num_pages, 
     'type' => 'array' 
    )); 
    if(is_array($page_format)) { 
       $paged = (get_query_var('paged') == 0) ? 1 : get_query_var('paged'); 
       echo '<div><ul>'; 
       foreach ($page_format as $page) { 
         echo "<li>$page</li>"; 
       } 
       echo '</ul></div>'; 
    } 
} 
?> 

это все ... в поисках и архивах шоу нумерация страницы, но в доме страница и пример: site.com dont показать разбиение на страницы, и это место просто бесплатно и без кода ...

ответ

0

Попробуйте этот код это будет работать для вас

<?php 
           global $query_string; 
           query_posts($query_string . "post_type=product&post_status=publish&posts_per_page=16"); 
           if (have_posts()) : while (have_posts()) : the_post(); ?> 
           <?php the_title(); ?> 

          <?php endwhile; 
           endif; ?> 
           <?php pagination_numeric_posts_nav(); ?> 
         <?php wp_reset_query(); ?> 

Поместите этот код в свой файл functions.php.

function pagination_numeric_posts_nav() { 

    if(is_singular()) 
     return; 

    global $wp_query; 

    /** Stop execution if there's only 1 page */ 
    if($wp_query->max_num_pages <= 1) 
     return; 

    $paged = get_query_var('paged') ? absint(get_query_var('paged')) : 1; 
    $max = intval($wp_query->max_num_pages); 

    /** Add current page to the array */ 
    if ($paged >= 1) 
     $links[] = $paged; 

    /** Add the pages around the current page to the array */ 
    if ($paged >= 3) { 
     $links[] = $paged - 1; 
     $links[] = $paged - 2; 
    } 

    if (($paged + 2) <= $max) { 
     $links[] = $paged + 2; 
     $links[] = $paged + 1; 
    } 

    echo '<div class=""><ul class="pagination">' . "\n"; 

    /** Previous Post Link */ 
    if (get_previous_posts_link()) 
     printf('<li>%s</li>' . "\n", get_previous_posts_link()); 

    /** Link to first page, plus ellipses if necessary */ 
    if (! in_array(1, $links)) { 
     $class = 1 == $paged ? ' class="active"' : ''; 

     printf('<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url(get_pagenum_link(1)), '1'); 

     if (! in_array(2, $links)) 
      echo '<li>…</li>'; 
    } 

    /** Link to current page, plus 2 pages in either direction if necessary */ 
    sort($links); 
    foreach ((array) $links as $link) { 
     $class = $paged == $link ? ' class="active"' : ''; 
     printf('<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url(get_pagenum_link($link)), $link); 
    } 

    /** Link to last page, plus ellipses if necessary */ 
    if (! in_array($max, $links)) { 
     if (! in_array($max - 1, $links)) 
      echo '<li>…</li>' . "\n"; 

     $class = $paged == $max ? ' class="active"' : ''; 
     printf('<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url(get_pagenum_link($max)), $max); 
    } 

    /** Next Post Link */ 
    if (get_next_posts_link()) 
     printf('<li>%s</li>' . "\n", get_next_posts_link()); 

    echo '</ul></div>' . "\n"; 

} 

css для разбивки на страницы.

.navigation li a, 
.navigation li a:hover, 
.navigation li.active a, 
.navigation li.disabled { 
    color: #fff; 
    text-decoration:none; 
} 

.navigation li { 
    display: inline; 
} 

.navigation li a, 
.navigation li a:hover, 
.navigation li.active a, 
.navigation li.disabled { 
    background-color: #6FB7E9; 
    border-radius: 3px; 
    cursor: pointer; 
    padding: 12px; 
    padding: 0.75rem; 
} 

.navigation li a:hover, 
.navigation li.active a { 
    background-color: #3C8DC5; 
} 

Я надеюсь, что это будет работать для вас

+0

не работал :(:( – Mahdi

+0

Не могли бы вы рассказать о своей проблеме.Пожалуйста, дайте полное описание проблемы, с которой вы столкнулись. Он отлично работает для меня –

+0

check 2new line in post <3 – Mahdi

0

Добавьте следующую функцию в файл functions.php:

function pagination($pages = '', $range = 4) 
{ 
    $showitems = ($range * 2)+1; 

    global $paged; 
    if(empty($paged)) $paged = 1; 

    if($pages == '') 
    { 
     global $wp_query; 
     $pages = $wp_query->max_num_pages; 
     if(!$pages) 
     { 
      $pages = 1; 
     } 
    } 

    if(1 != $pages) 
    { 
     echo "<div class=\"pagination\"><span>Page ".$paged." of ".$pages."</span>"; 
     if($paged > 2 && $paged > $range+1 && $showitems < $pages) echo "<a href='".get_pagenum_link(1)."'>&laquo; First</a>"; 
     if($paged > 1 && $showitems < $pages) echo "<a href='".get_pagenum_link($paged - 1)."'>&lsaquo; Previous</a>"; 

     for ($i=1; $i <= $pages; $i++) 
     { 
      if (1 != $pages &&(!($i >= $paged+$range+1 || $i <= $paged-$range-1) || $pages <= $showitems)) 
      { 
       echo ($paged == $i)? "<span class=\"current\">".$i."</span>":"<a href='".get_pagenum_link($i)."' class=\"inactive\">".$i."</a>"; 
      } 
     } 

     if ($paged < $pages && $showitems < $pages) echo "<a href=\"".get_pagenum_link($paged + 1)."\">Next &rsaquo;</a>"; 
     if ($paged < $pages-1 && $paged+$range-1 < $pages && $showitems < $pages) echo "<a href='".get_pagenum_link($pages)."'>Last &raquo;</a>"; 
     echo "</div>\n"; 
    } 
} 

стиль его, добавьте следующие строки в таблицу стилей (как правило, стиль. CSS).

.pagination { 
clear:both; 
padding:20px 0; 
position:relative; 
font-size:11px; 
line-height:13px; 
} 

.pagination span, .pagination a { 
display:block; 
float:left; 
margin: 2px 2px 2px 0; 
padding:6px 9px 5px 9px; 
text-decoration:none; 
width:auto; 
color:#fff; 
background: #555; 
} 

.pagination a:hover{ 
color:#fff; 
background: #3279BB; 
} 

.pagination .current{ 
padding:6px 9px 5px 9px; 
background: #3279BB; 
color:#fff; 
} 

Наконец, вызовите функцию в вашей теме (как правило, в нижней части index.php или loop.php, где он говорит: «Старые сообщения» или «Предыдущие записи»):

<?php if (function_exists("pagination")) { 
    pagination($additional_loop->max_num_pages); 
} ?> 
+0

не работает тоже :( – Mahdi

+0

какая ошибка show? –

+0

not error , проверить сайт, [сайт] (http://pdf-market.ir) [поиск] (http://pdf-market.ir/?s= کتاب) [страница2] (http://pdf-market.ir/?paged=2) – Mahdi

Смежные вопросы