「醜い」と「きれいな」パーマリンクでリンクをページングしますか?
1 回答
- 投票
つまり、この関数を「醜い」パーマリンクと「きれいな」パーマリンクで機能させることができるようです.コードは次のとおりです:
<?php
global $wp_query;
//structure of "format" depends on whether we're using pretty permalinks
if( get_option('permalink_structure') ) {
$format = '?paged=%#%';
} else {
$format = 'page/%#%/';
}
$big = 999999999; // need an unlikely integer
$base = $format =='?paged=%#%' ? $base = str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ) : $base = @add_query_arg('paged','%#%');
echo paginate_links( array(
'base' => $base,
'format' => $format,
'current' => max( 1, $paged ),
'total' => $wp_query->max_num_pages,
'prev_text' => esc_html__( 'Prev', 'domain' ),
'next_text' => esc_html__( 'Next', 'domain' ),
'end_size' => 1,
'mid_size' => 1,
) );
?>
誰かの助けになることを願っています;)
So it look's like it is possible to make this function work with “ugly” and “pretty” permalinks. Here is the code:
<?php
global $wp_query;
//structure of "format" depends on whether we're using pretty permalinks
if( get_option('permalink_structure') ) {
$format = '?paged=%#%';
} else {
$format = 'page/%#%/';
}
$big = 999999999; // need an unlikely integer
$base = $format =='?paged=%#%' ? $base = str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ) : $base = @add_query_arg('paged','%#%');
echo paginate_links( array(
'base' => $base,
'format' => $format,
'current' => max( 1, $paged ),
'total' => $wp_query->max_num_pages,
'prev_text' => esc_html__( 'Prev', 'domain' ),
'next_text' => esc_html__( 'Next', 'domain' ),
'end_size' => 1,
'mid_size' => 1,
) );
?>
Hope it will help someone ;)
「きれいな」パーマリンクを有効にしている場合、コードは静的ページで機能します(ページが「ホームページ」または「通常のページ」に設定されている場合は機能します).しかし、「デフォルトのパーマリンク」構造を使用すると、コードが壊れます.
これまでのところ、これはあります(「かなりのパーマリンク」ではうまく機能しますが、「醜いパーマリンク」では壊れます):
両方(醜いパーマリンクとかなりのパーマリンク)のページ付けに番号を付けることは可能ですか?