Постраничная Навигация В Блоге Категории Joomla 2.5

Тема в разделе "Общие вопросы", создана пользователем switchweb, 1 янв 2014.

  1. switchweb

    switchweb New Member

    Регистрация:
    19 июн 2013
    Сообщения:
    1
    Симпатии:
    0
    Здравствуйте. Вопрос программистам. Как добавить к постраничной навигации в Joomla 2.5 внизу после перечня страниц ссылку "Посмотреть все", чтобы кликнув на нее можно было посмотреть все статьи данной категории без разбиения на страницы. Нужно подредактировать файл pagination.php шаблона. Буду очень благодарна если поможете. Ниже сам файлик.
    Код (PHP):
    <?php
    /**
    * @version      $Id: pagination.php 10822 2009-10-09 16:16:00Z tcp $
    * @package      Joomla
    * @copyright    Copyright (C) 2005 - 2007 Open Source Matters. All rights reserved.
    * @license      GNU/GPL, see LICENSE.php
    */


    // no direct access
    defined('_JEXEC') or die('Restricted access');
    /**
    * This is a file to add template specific chrome to pagination rendering.
    *
    * pagination_list_footer
    *    Input variable $list is an array with offsets:
    *        $list[limit]       : int
    *        $list[limitstart]  : int
    *        $list[total]       : int
    *        $list[limitfield]  : string
    *        $list[pagescounter]    : string
    *        $list[pageslinks]  : string
    *
    * pagination_list_render
    *    Input variable $list is an array with offsets:
    *        $list[all]
    *            [data]     : string
    *            [active]   : boolean
    *        $list[start]
    *            [data]     : string
    *            [active]   : boolean
    *        $list[previous]
    *            [data]     : string
    *            [active]   : boolean
    *        $list[next]
    *            [data]     : string
    *            [active]   : boolean
    *        $list[end]
    *            [data]     : string
    *            [active]   : boolean
    *        $list[pages]
    *            [{PAGE}][data]     : string
    *            [{PAGE}][active]   : boolean
    *
    * pagination_item_active
    *    Input variable $item is an object with fields:
    *        $item->base    : integer
    *        $item->link    : string
    *        $item->text    : string
    *
    * pagination_item_inactive
    *    Input variable $item is an object with fields:
    *        $item->base    : integer
    *        $item->link    : string
    *        $item->text    : string
    *
    * This gives template designers ultimate control over how pagination is rendered.
    *
    * NOTE: If you override pagination_item_active OR pagination_item_inactive you MUST override them both
    */


    function pagination_list_footer($list)
    {
    // Initialize variables
    $lang =& JFactory::getLanguage();
    $html = "<div class=\"list-footer\">\n";

    if ($lang->isRTL())
    {
    $html .= "\n<div class=\"counter\">".$list['pagescounter']."</div>";
    $html .= $list['pageslinks'];
    $html .= "\n<div class=\"limit\">".JText::_('Display Num').$list['limitfield']."</div>";
    }
    else
    {
    $html .= "\n<div class=\"limit\">".JText::_('Display Num').$list['limitfield']."</div>";
    $html .= $list['pageslinks'];
    $html .= "\n<div class=\"counter\">".$list['pagescounter']."</div>";
    }

    $html .= "\n<input type=\"hidden\" name=\"limitstart\" value=\"".$list['limitstart']."\" />";
    $html .= "\n</div>";

    return $html;
    }

    function pagination_list_render($list)
    {
    // Initialize variables
    $numlr = 1; //колличество позиций страниц в начале ленты и в конце
    $numpos = 9; //колличество позиций ленты вообще
    $lang =& JFactory::getLanguage();
    $html = '<nav class="pagination">';
    $html .= '<ul class="pageList">';
    // Reverse output rendering for right-to-left display
    if($lang->isRTL()){ $list['pages'] = array_reverse( $list['pages'] ); }
    $html .= '<li class="pageLinkprev">';
    //  $html .= '&laquo;';
    //  $html .= '«';
    //  $html .= $list['start']['data'];
    $html .= $list['previous']['data'];
    $html .= '</li>';


    if(count($list['pages'])>$numpos) { // если страниц больше чем позиций в ленте - разбиваем троеточием
    for($i=1; $i<=count($list['pages']); $i++){
    if(!$list['pages'][$i]['active']) {
    if($i > $numlr){
    for($j=1; $j<=$numlr; $j++){ $html .= '<li class="pageLink">'.$list['pages'][$j]['data'].'</li>'; }
    }else{
    for($j=1; $j<$i; $j++){ $html .= '<li class="pageLink">'.$list['pages'][$j]['data'].'</li>'; }
    }
    if(($numlr+1) < ($i-1)){ $html .= '<span>...</span>'; }
    if((count($list['pages']) - $numlr) <= $i){
    for($j=(count($list['pages'])-$numlr-2); $j<$i; $j++){ $html .= '<li class="pageLink">'.$list['pages'][$j]['data'].'</li>'; }
    }else{
    if($i > ($numlr+1)){ $html .= '<li class="pageLink">'.$list['pages'][$i-1]['data'].'</li>'; }
    }
    $html .= '<li class="pageLink">';
    $html .= $list['pages'][$i]['data'];
    $html .= '</li>';
    if(($numlr+1) >= $i){
    for($j=($i+1); $j<=($numlr+3); $j++){ $html .= '<li class="pageLink">'.$list['pages'][$j]['data'].'</li>'; }
    }else{
    if($i < (count($list['pages'])-$numlr)){ $html .= '<li class="pageLink">'.$list['pages'][$i+1]['data'].'</li>'; }
    }
    if((count($list['pages']) - $numlr) > ($i+1)){ $html .= '<span>...</span>'; }
    if($i <= (count($list['pages'])-$numlr)){
    for($j=(count($list['pages'])-$numlr+1); $j<=count($list['pages']); $j++){ $html .= '<li class="pageLink">'.$list['pages'][$j]['data'].'</li>'; }
    }else{
    for($j=$i+1; $j<=count($list['pages']); $j++){ $html .= '<li class="pageLink">'.$list['pages'][$j]['data'].'</li>'; }
    }
    }
    }
    } else {
    foreach( $list['pages'] as $page ){
    if(!$page['active']) {
    $html .= '';
    }
    $html .= '<li class="pageLink">';
    $html .= $page['data'];
    $html .= '</li>';
    if(!$page['active']) {
    $html .= '';
    }
    }
    }


    $html .= '<li class="pageLinknext">';
    $html .= $list['next']['data'];
    //  $html .= $list['end']['data'];
    //  $html .= '&raquo;';
    $html .= '</li>';
    $html .= '</ul>';
    $html .= '</nav>';
    return $html;
    }

    function pagination_item_active(&$item) {
    return "<a class=\"page\" href=\"".$item->link."\" title=\"".$item->text."\">".$item->text."</a>";
    }

    function pagination_item_inactive(&$item) {
    return "<a class=\"page active\" title=\"".$item->text."\">".$item->text."</a>";
    }
    ?>
     

    Вложения:

    • pagination.php
      Размер файла:
      5,3 КБ
      Просмотров:
      2
Загрузка...
Похожие Темы - Постраничная Навигация Блоге
  1. NetWood
    Ответов:
    7
    Просмотров:
    4.622
  2. Kizarek86
    Ответов:
    0
    Просмотров:
    1.434

Поделиться этой страницей