Помогите допилить пагинацию URL — убрать лишние символы
Запилил пагинацию галереи, но мне не нравится корявые URL
Сейчас
http://example.com/info-test-paginat/ http://example.com/info-test-paginat/?cpage=2 http://example.com/info-test-paginat/?cpage=3
Хочу
http://example.com/info-test-paginat/ http://example.com/info-test-paginat/2 http://example.com/info-test-paginat/3
при возврате со 2-й на первую страницу получаю лишние ?cpage=1
http://example.com/info-test-paginat/?cpage=1
1 Как исправить ?cpage=2 просто на 2 и так далее
2 Как исправить чтоб при возврате на первую пропадали символы ?cpage=1 ?
3 Подскажите что поправить чтоб возможно было изменять названия страниц пагинации под свои нужды к примеру
http://example.com/info-test-paginat/chast=2 http://example.com/info-test-paginat/stranica=2 http://example.com/info-test-paginat/prodoljenie/2
4 В новых названиях не должно быть спец символов типа "вопросительного занака"
5 Как сделать постоянно видимыми
'prev_text' => __('«'),
'next_text' => __('»'),
6 Вылечить баг - Если зайти на странице под таким адрессом, то она будет работать
/example.com/info-test-paginat/ 20 /
/example.com/info-test-paginat/ любое число /chast=2
а URL продолжит слаживаться
<?php if ( is_user_logged_in() ) { /* только для залогиненых */ ?>
<div class="gap"></div>
<hr />
<div id="testborder">
<?php
/* pagination gallery for me Kolshix v: 1.1 */
$categories = get_post_gallery( $post->ID, false );
$categories = explode(',', $categories['ids']);
$page = isset( $_GET['cpage'] ) ? abs( (int) $_GET['cpage'] ) : 1; // слово в адресе
$numOfItems = 10; // количество постов на странице
$to = $page * $numOfItems; //
$current = $to - $numOfItems; //
$total = sizeof($categories); // всего
$outoput = paginate_links( array(
'base' => add_query_arg( 'cpage', '%#%' ),
'format' => '',
'prev_next' => true,
'prev_text' => __('«'),
'next_text' => __('»'),
'total' => ceil($total / $numOfItems),
'current' => $page
));
echo '<div class="page-links">'. $outoput .'</div><div class="gappagi"></div>';
?>
<div id="" class="gallery gallery-columns-0 gallery-size-medium" itemscope="" itemtype="http://schema.org/ImageGallery">
<?php
for ($i=$current; $i<$to; ++$i) {
$category = $categories[$i];
if($category==''){ continue; } // оборвать показ изображений - уже пусто
$attachment = get_post( $category );
$massiv = array('title' => $attachment->post_title); // получить alt
// вывод галереи на вкус, цвет и размер
echo '<figure class="gallery-item" itemprop="associatedMedia" itemscope="" itemtype="http://schema.org/ImageObject"><div class="gallery-icon portrait"><a href="'. get_attachment_link( $category ) . '" itemprop="contentURL"><img src="'. wp_get_attachment_image_url($category,'medium') . '" class="attachment-medium size-medium" itemprop="thumbnail" alt="'. $massiv[title] .'" /></a></div></figure>';
}
?>
</div>
<div class="gappagi"></div>
$outoput = paginate_links( array(
'base' => add_query_arg( 'cpage', '%#%' ),
'format' => '',
'prev_next' => true,
'prev_text' => __('«'),
'next_text' => __('»'),
'total' => ceil($total / $numOfItems),
'current' => $page
));
echo '<div class="page-links">'. $outoput .'</div><div class="gappagi"></div>';
</div>
<?php /* только для залогиненых */ } ?>исправил вопрос - лови выше
Не стесняйтесь выложить своё решение с галереями, чтобы было на чём поэкспериментировать. Остальное всё теория.