Page 1 of 1

пагинация кастомизация :)

Posted: Tue Aug 12, 2014 12:54 am
by wskeal
Может где было уже, подскажите.

В общем реврайты такие
rewrite ^/category/([^/]+)/best/([^/]+)/$ index.php?group_name=$1&order=ctr&page=$2&force_template=pagination last;
rewrite ^/category/([^/]+)/new/([^/]+)/$ index.php?group_name=$1&order=date&page=$2&force_template=pagination last;
rewrite ^/category/([^/]+)/duration/([^/]+)/$ index.php?group_name=$1&order=duration&page=$2&force_template=pagination last;


В пагинации темплейта пока так:

<pagination first_pages=3 adjustment=1 last_pages=3 range_separator="...">
<li><a href="/category/<!--CATEGORY_NAME-->/best/<!--PAGE_NUM-->/"><!--PAGE_NUM--></a></li>
</pagination>

Если вместо "best" который выделен жирным подставить <!--SORT_ORDER-->, то он будет подставлять date или ctr или duration, а не best, new, duration.

Я так понимаю нужен скрипт типа "если order=ctr, тогда <!--SORT_ORDER-->=best
если order=date, то <!--SORT_ORDER-->=new. Или эти параметры в конфиге может каком задаются?

Можно конечно под каждый вид сортировки свой темплейт создать и там прописывать, но это долго.

Re: пагинация кастомизация :)

Posted: Tue Aug 12, 2014 1:14 am
by wskeal

Re: пагинация кастомизация :)

Posted: Tue Aug 12, 2014 1:20 pm
by admin
Можно прямо в темпелйте так и писать типа

if ($_GET['order'] == '...') $my_sort = '...';

и потом в навигации подставлять $my_sort

Re: пагинация кастомизация :)

Posted: Thu Oct 02, 2014 6:48 pm
by wskeal
Сюда же спрошу

В темплейте вот так

<pagination first_pages=4 adjustment=1 last_pages=2 range_separator="<li>...</li>">
<li><a href="/best/<!--PAGE_NUM-->/" target="_self"><!--PAGE_NUM--></a></li>
</pagination>

есть проблема с вёрсткой, текущую "неактивную" кнопочку пагинации не кастомизировать нормально.

Для текущей страницы убирается тег <a></a>. Можно ли сделать так чтоб, если страница текущая, то в li прописывался class="current"
Чтоб результирующий вывод был например таким для первой страницы пагинации:

<ul>
<li class="current">1</li>
<li><a href="/best/2/">2</a></li>
<li><a href="/best/3/">3</a></li>
<li><a href="/best/4/">4</a></li>
<li>...</li>
<li><a href="/best/41/">41</a></li>
<li><a href="/best/42/">42</a></li>
</ul>

ну и соответственно для каждой так

нужно что-то вроде:
if page = currentpage
echo class="current"

Проблема конечно легко решаема, если вставить <span></span> внутри тэгов <a>, но как-то это не очень красиво :) не хочется вставлять тэги внутри <a></a>

Re: пагинация кастомизация :)

Posted: Thu Oct 02, 2014 7:01 pm
by wskeal
Нашел то что нужно

active_link_style=act_page link_style=not_act_page

спасибо)

Re: пагинация кастомизация :)

Posted: Thu Oct 02, 2014 9:04 pm
by admin
Отлично )

Re: пагинация кастомизация :)

Posted: Mon Feb 27, 2017 2:39 pm
by fima228
Круто было бы еще по аналогии с active_link_style сделать active_link_class , чтобы можно было менять не стиль а класс для активной страницы :)

Re: пагинация кастомизация :)

Posted: Mon Feb 27, 2017 2:44 pm
by admin
А какая технически разница ? это просто название переменной , куда вы у себя ее в коде поставить это уже ваше дело