Форум пользователей Impera CMS
Impera CMS - отличный движок для лёгкого создания интернет магазина.
Обладает невероятным количеством функций, необходимых в онлайн торговле.

Следить
Главная
23:47
07 апр
#
?
написал:

Добрый час. Разбираюсь с движком на примере исходников шаблона ecommerce. Всё нравится пока, всё понятно, кроме такого моменита в пагинации. Есть файл там navigation.htm, в нём доступны переменные.

  • $Pages = список адресов листаемых страниц
  • $PrevPageUrl = адрес предыдущей страницы (если сейчас не на первой)
  • $NextPageUrl = адрес следующей страницы (если сейчас не на последней)
  • $AllOnPageUrl = адрес страницы "Все на одной"
  • $CurrentPage = индекс (номер-1) текущей страницы

Это пагинация вида

Назад / Номера страниц / Вперёд / Все

А какие переменные используются для расширенной пагинации?

Первая / Назад / Номера страниц / Вперёд / Последняя / Все
02:09
08 апр
#
?
написал:

Вопрос снят, сам разобрался. Почему-то не подумал, что первая и последняя есть в $Pages. Вот как всё просто решилось.

{if $Pages}
    <ul class="pagination">
        <!-- первая -->
        {if $PrevPageUrl}
            {$url = reset($Pages)}
            <li><a href="{$url}">&laquo;</a></li>
            <!-- назад -->
            <li><a href="{$PrevPageUrl}">&lt;</a></li>
        {/if}

        <!-- страницы -->
        {foreach $Pages as $i => $url}
            {if $i == $CurrentPage}
                <li><span>{$i + 1}</span></li>
            {else}
                <li><a href="{$url}">{$i + 1}</a></li>
            {/if}
        {/foreach}

        <!-- вперед -->
        {if $NextPageUrl}
            <li><a href="{$NextPageUrl}">&gt;</a></li>
            <!-- последняя -->
            {$url = end($Pages)}
            <li><a href="{$url}">&raquo;</a></li>
        {/if}

        <!-- все -->
        {if $AllOnPageUrl}
            <li><a href="{$AllOnPageUrl}">все</a></li>
        {/if}
    </ul>
{/if}

Написание ответа

Перед публикацией рекомендуется использовать Предпросмотр, чтобы увидеть конечный вид сообщения.


Обратите внимание! Для противодействия спаму новые посты форума проявляются с задержкой от нескольких минут, пока не пройдут модерацию.