Joomla 1.5 Переход по страницам в виде картинок

Тема в разделе "Изменение шаблона (кастомизация)", создана пользователем najdera, 12.08.2010.

  1. najdera
    Offline

    najdera Недавно здесь

    Регистрация:
    26.07.2010
    Сообщения:
    48
    Симпатии:
    0
    Пол:
    Женский
    В стандартном варианте переход производиться с помощью слов Следующая, Последняя... Можно ли их сделать в виде картинок?

    И еще, можно ли сделать чтобы например, когда вперед двигаться нельзя, картинка становилась не активной (тоесть сменялась другой картинкой)?
     
    Последнее редактирование: 23.08.2010
  2.  
  3. DKraev
    Offline

    DKraev <i>(aka gft)</i>

    Регистрация:
    16.08.2008
    Сообщения:
    1 627
    Симпатии:
    216
    Пол:
    Мужской
    Т.е. Вы уже нашли способ сделать эти ссылки изображениями, я так понимаю?
     
  4. najdera
    Offline

    najdera Недавно здесь

    Регистрация:
    26.07.2010
    Сообщения:
    48
    Симпатии:
    0
    Пол:
    Женский
    Не совсем. Я думаю можно сделать с помощью присвоения бэкграунда в стилях.
     
  5. DKraev
    Offline

    DKraev <i>(aka gft)</i>

    Регистрация:
    16.08.2008
    Сообщения:
    1 627
    Симпатии:
    216
    Пол:
    Мужской
  6. najdera
    Offline

    najdera Недавно здесь

    Регистрация:
    26.07.2010
    Сообщения:
    48
    Симпатии:
    0
    Пол:
    Женский
    В общем, в интернете нашла следующее решение. Оно не с картинками, но становиться понятнее что да как...

    Создаем в нашем шаблоне pagination.php (В папке html), туда вписываем следующий код
    Код (PHP):
    1. <?php
    2.  
    3. // no direct access
    4. defined('_JEXEC') or die('Restricted access');
    5.  
    6. /**
    7.  * This is a file to add template specific chrome to pagination rendering.
    8.  *
    9.  * pagination_list_footer
    10.  *   Input variable $list is an array with offsets:
    11.  *       $list[limit]       : int
    12.  *       $list[limitstart]  : int
    13.  *       $list[total]       : int
    14.  *       $list[limitfield]  : string
    15.  *       $list[pagescounter]    : string
    16.  *       $list[pageslinks]  : string
    17.  *
    18.  * pagination_list_render
    19.  *   Input variable $list is an array with offsets:
    20.  *       $list[all]
    21.  *           [data]     : string
    22.  *           [active]   : boolean
    23.  *       $list[start]
    24.  *           [data]     : string
    25.  *           [active]   : boolean
    26.  *       $list[previous]
    27.  *           [data]     : string
    28.  *           [active]   : boolean
    29.  *       $list[next]
    30.  *           [data]     : string
    31.  *           [active]   : boolean
    32.  *       $list[end]
    33.  *           [data]     : string
    34.  *           [active]   : boolean
    35.  *       $list[pages]
    36.  *           [{PAGE}][data]     : string
    37.  *           [{PAGE}][active]   : boolean
    38.  *
    39.  * pagination_item_active
    40.  *   Input variable $item is an object with fields:
    41.  *       $item->base    : integer
    42.  *       $item->link    : string
    43.  *       $item->text    : string
    44.  *
    45.  * pagination_item_inactive
    46.  *   Input variable $item is an object with fields:
    47.  *       $item->base    : integer
    48.  *       $item->link    : string
    49.  *       $item->text    : string
    50.  *
    51.  * This gives template designers ultimate control over how pagination is rendered.
    52.  *
    53.  * NOTE: If you override pagination_item_active OR pagination_item_inactive you MUST override them both
    54.  */
    55.  
    56. function pagination_list_footer($list)
    57. {
    58.     // Initialize variables
    59.     $lang =& JFactory::getLanguage();
    60.     $html = "<div class=\"list-footer\">\n";
    61.  
    62.     if ($lang->isRTL())
    63.     {
    64.         $html .= "\n<div class=\"counter\">".$list['pagescounter']."</div>";
    65.         $html .= $list['pageslinks'];
    66.         $html .= "\n<div class=\"limit\">".JText::_('Display Num').$list['limitfield']."</div>";
    67.     }
    68.     else
    69.     {
    70.         $html .= "\n<div class=\"limit\">".JText::_('Display Num').$list['limitfield']."</div>";
    71.         $html .= $list['pageslinks'];
    72.         $html .= "\n<div class=\"counter\">".$list['pagescounter']."</div>";
    73.     }
    74.  
    75.     $html .= "\n<input type=\"hidden\" name=\"limitstart\" value=\"".$list['limitstart']."\" />";
    76.     $html .= "\n</div>";
    77.  
    78.     return $html;
    79. }
    80.  
    81. function pagination_list_render($list)
    82. {
    83.     // Initialize variables
    84.     $lang =& JFactory::getLanguage();
    85.     $html = "<ul class=\"pagination\">";
    86.     //$html .= '<li>&laquo;</li>';
    87.     // Reverse output rendering for right-to-left display
    88.     if($lang->isRTL())
    89.     {
    90.         $html .= $list['start']['data'];
    91.         $html .= $list['previous']['data'];
    92.  
    93.         $list['pages'] = array_reverse( $list['pages'] );
    94.  
    95.         foreach( $list['pages'] as $page ) {
    96.             if($page['data']['active']) {
    97.                 //  $html .= '<strong>';
    98.             }
    99.  
    100.             $html .= $page['data'];
    101.  
    102.             if($page['data']['active']) {
    103.                 // $html .= '</strong>';
    104.             }
    105.         }
    106.  
    107.         $html .= $list['next']['data'];
    108.         $html .= $list['end']['data'];
    109.         // $html .= '«';
    110.     }
    111.     else
    112.     {
    113.         $html .= $list['start']['data'];
    114.         $html .= $list['previous']['data'];
    115.  
    116.         foreach( $list['pages'] as $page )
    117.         {
    118.             if($page['data']['active']) {
    119.                 // $html .= '<strong>';
    120.             }
    121.  
    122.             $html .= $page['data'];
    123.  
    124.             if($page['data']['active']) {
    125.                 //  $html .= '</strong>';
    126.             }
    127.         }
    128.  
    129.         $html .= $list['next']['data'];
    130.         $html .= $list['end']['data'];
    131.         // $html .= '«';
    132.  
    133.     }
    134.     //$html .= '<li>&raquo;</li>';
    135.     $html .= "</ul>";
    136.     return $html;
    137. }
    138.  
    139. function pagination_item_active(&$item) {
    140.     return "<li><a href=\"".$item->link."\">".$item->text."</a></li>";
    141. }
    142.  
    143. function pagination_item_inactive(&$item) {
    144.     return "<li><strong><span>".$item->text."</span></strong></li>";
    145. }
    146. ?>


    Далее в стили дописываем...

    Код (PHP):
    1. /*Начало постраничной навигации
    2. -------------------------------------------------------------------*/
    3. .blokpagnav {
    4.     text-align: center;
    5.     vertical-align: top;
    6. }
    7. ul.pagination {
    8.     margin: 15px 5px 15px 0;
    9.     padding: 10px 0;
    10. }
    11.  
    12. ul.pagination li {
    13.     margin: 0;
    14.     padding: 0;
    15.     display: inline;
    16. }
    17.  
    18. ul.pagination li span{
    19.     margin-right:2px;
    20.     margin-left:2px;
    21.     padding: 2px 5px;
    22.     border: 1px solid #E2E2E2;
    23.     display: inline;
    24. }
    25.  
    26. ul.pagination a {
    27.     margin-right:2px;
    28.     margin-left:2px;
    29.     padding: 2px 5px;
    30.     border: 1px solid #E2E2E2;
    31. }
    32.  
    33. ul.pagination a:hover, ul.pagination a:active, ul.pagination a:focus {
    34.     color: #747474;
    35.     border: 1px solid #dadada;
    36.     background: #ededed;
    37.     text-decoration: none;
    38. }


    Выходит так, как я показала в приложении.

    Теперь осталось добавить картинки, и тут снова встал ступор!!!

    Отзовитесь! Знатоки PHP! В данном случае, не меняя его, через стили не получиться, так как SPAN общий для всех неактивных ссылок. Что делать?
     

    Вложения:

    Последнее редактирование: 13.08.2010

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

Загрузка...