나는 동일한 문제가있어서이 모든 것이 해결되었습니다. 이렇게하면 꽤 permalinks 내 page.php뿐만 아니라 index.php에 페이지 매김 수 있습니다.
HTML/PHP는 :
<?php
//Fix homepage pagination
if (get_query_var('paged')) { $paged = get_query_var('paged'); } else if (get_query_var('page')) {$paged = get_query_var('page'); } else {$paged = 1; }
$temp = $wp_query; // re-sets query
$wp_query = null; // re-sets query
$args = array('post_type' => array('post', 'music', 'videos'), 'orderby'=>'date', 'order'=>'DESC', 'posts_per_page' => 10, 'paged' => $paged);
$wp_query = new WP_Query();
$wp_query->query($args);
while ($wp_query->have_posts()) : $wp_query->the_post();
?>
<!--your loop stuff here -->
<?php endwhile; ?>
<nav>
<?php paginate(); ?>
$wp_query = null;
$wp_query = $temp; // Reset
</nav>
이 몇 가지 있습니다. 하나는 가정, 페이지 또는 단일에서 확인하고 $ 페이지 변수에 차례로 반응하는 방법을 알려줍니다. 또한 사용자 정의 게시물 유형을 사용하여 페이지 매김을 질의 할 수 있습니다. 또한 query_post를 사용하지 않으면 사용시 때때로 얻을 수있는 정말 펑키 한 것들을 피할 수 있습니다. 페이지 번호();
이 원래 나에게 약간의 페이지 매김이 홈페이지에 일하러 가야 모딩과 http://bavotasan.com/2011/simple-pagination-for-wordpress/에서 온
function paginate() {
global $wp_query, $wp_rewrite;
$wp_query->query_vars['paged'] > 1 ? $current = $wp_query->query_vars['paged'] : $current = 1;
$pagination = array(
'base' => @add_query_arg('page','%#%'),
'format' => '',
'total' => $wp_query->max_num_pages,
'current' => $current,
'show_all' => true,
'type' => 'list',
'next_text' => '»',
'prev_text' => '«'
);
if($wp_rewrite->using_permalinks())
$pagination['base'] = user_trailingslashit(trailingslashit(remove_query_arg('page', get_pagenum_link(1))) . '?page=%#%/', 'paged');
if(!empty($wp_query->query_vars['s']))
$pagination['add_args'] = array('s' => get_query_var('s'));
echo paginate_links($pagination);
}
당신의 functions.php 내부 : 우리가 지금 가져올 사용자 정의 함수입니다.
이것은 여러 가지 일을합니다. 그것은 각 페이지가 자신의 링크 (내가 좋은 것을 찾는다)를 페이지에 매김시키고 예쁜 퍼머 링크를 허용하는 URL을 다시 쓴다. 링크를 확인하면 변수의 's'가이 부분의 'paged'대신 사용되었습니다. 나는 's'를 'paged'로 바꿨고, 모든 것이 완벽하게 작동했습니다. 페이지 매김
ul.page-numbers {
margin: 20px 0 10px;
width: 100%;
padding: 0;
font-size: 12px;
line-height: normal;
clear: both;
float: left;
}
ul.page-numbers li {
float: left;
}
ul.page-numbers a,
ul.page-numbers span {
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
background: -webkit-gradient(linear, left top, left bottom, from(#E4E3E3), to(#FFFFFF));
background: -moz-linear-gradient(top, #E4E3E3, #FFFFFF);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#E4E3E3', endColorstr='#FFFFFF');
padding: 3px 4px 2px 4px;
margin: 2px;
text-decoration: none;
border: 1px solid #ccc;
color: #666;
}
ul.page-numbers a:hover,
ul.page-numbers span.current {
border: 1px solid #666;
color: #444;
}
편집 의
옵션 스타일링 나는 홈 페이지 매김 페이지 탭 중 하나를 클릭 한 후 휴식 것을 나중에 깨달았다. 나는 이것을 조건문을 대체하고 이것을 대신해서 고정시켰다. 위의 코드를 업데이트했습니다. 지금 잠시 동안이 문제로 어려움을 겪고있다
$pagination['base'] = user_trailingslashit(trailingslashit(remove_query_arg('page', get_pagenum_link(1))) . '?page=%#%/', 'paged');
wordpress.se이 질문은 모두 이상하다고 생각합니다. – John
여러 솔루션을 시도했지만 작동하지 않았습니다. – dang
wordpress.stackexchange.com은 이와 같은 사이트이지만 WordPress의 질문에 특히 적합합니다. 그들은저기서 워드 프레스 물건을하지만, 당신이 여기에 충분한 답변을 얻지 못한다면, 거기에 시도하십시오. – John