Вопрос Пагинация (показать все материалы)

Тема в разделе "Внешний вид, шаблоны, графика", создана пользователем Orionyus, 18.08.2015.

  1. Offline

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

    Регистрация:
    18.08.2015
    Сообщения:
    5
    Симпатии:
    0
    Здравствуйте!

    Подскажите, что необходимо дописать в файле pagination.php чтобы после стандартной пагинации ещё выводился линк на "Показать все материалы" из определенной категории?

    Спасибо.
     
  2.  
  3. lev
    Offline

    lev специалист

    Регистрация:
    21.12.2007
    Сообщения:
    676
    Симпатии:
    40
    Пол:
    Мужской
    pagination.php - переопределение вывода постраничной навигации Joomla

    http://jdevelop.info/articles/jtemp...elenie-vyvoda-postranichnoj-navigatsii-joomla

    создаем пустой файл pagination.php в папке html вашего шаблона

    Код (CODE):
    1. defined('JPATH_PLATFORM') or die;


    а потом в нем просто переопределяем нужные функции из реального pagination.php
    Код (CODE):
    1. /**
    2. * @package     Joomla.Platform
    3. * @subpackage  HTML
    4. *
    5. * @copyright   Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved.
    6. * @license     GNU General Public License version 2 or later; see LICENSE
    7. */
    8.  
    9. defined('JPATH_PLATFORM') or die;
    10.  
    11. /**
    12. * Pagination Class.  Provides a common interface for content pagination for the
    13. * Joomla! Platform.
    14. *
    15. * @package     Joomla.Platform
    16. * @subpackage  HTML
    17. * @since       11.1
    18. */
    19.  
    20.  
    21.  
    22. /**
    23. * Method to create an active pagination link to the item
    24. *
    25. * @param   JPaginationObject  &$item  The object with which to make an active link.
    26. *
    27. * @return   string  HTML link
    28. *
    29. * @since    11.1
    30. */
    31. function pagination_item_active(&$item)
    32. {
    33.     $app = JFactory::getApplication();
    34.     if ($app->isAdmin())
    35.     {
    36.         if ($item->base > 0)
    37.         {
    38.             return "<a title=\"" . $item->text . "\" onclick=\"document.adminForm." . $this->prefix . "limitstart.value=" . $item->base
    39.             . "; Joomla.submitform();return false;\">" . $item->text . "</a>";
    40.         }
    41.         else
    42.         {
    43.             return "<a title=\"" . $item->text . "\" onclick=\"document.adminForm." . $this->prefix
    44.             . "limitstart.value=0; Joomla.submitform();return false;\">" . $item->text . "</a>";
    45.         }
    46.     }
    47.     else
    48.     {
    49.         return "<a title=\"" . $item->text . "\" href=\"" . $item->link . "\" class=\"pagenav\">" . $item->text . "</a>";
    50.     }
    51. }
    52.  
    53.  
    54. /**
    55. * Method to create an inactive pagination string
    56. *
    57. * @param   object  &$item  The item to be processed
    58. *
    59. * @return  string
    60. *
    61. * @since   11.1
    62. */
    63. function pagination_item_inactive(&$item)
    64. {
    65.     $app = JFactory::getApplication();
    66.     if ($app->isAdmin())
    67.     {
    68.         return "<span>" . $item->text . "</span>";
    69.     }
    70.     else
    71.     {
    72.         return "<span class=\"pagenav\">" . $item->text . "</span>";
    73.     }
    74. }
    75.  
    76.  
    77. /**
    78. * Create the html for a list footer
    79. *
    80. * @param   array  $list  Pagination list data structure.
    81. *
    82. * @return  string  HTML for a list start, previous, next,end
    83. *
    84. * @since   11.1
    85. */
    86. function pagination_list_render($list)
    87. {
    88.     // Reverse output rendering for right-to-left display.
    89.     $html = '<ul>';
    90.     $html .= '<li class="pagination-start">' . $list['start']['data'] . '</li>';
    91.     $html .= '<li class="pagination-prev">' . $list['previous']['data'] . '</li>';
    92.     foreach ($list['pages'] as $page)
    93.     {
    94.         $html .= '<li>' . $page['data'] . '</li>';
    95.     }
    96.     $html .= '<li class="pagination-next">' . $list['next']['data'] . '</li>';
    97.     $html .= '<li class="pagination-end">' . $list['end']['data'] . '</li>';
    98.     $html .= '</ul>';
    99.  
    100.     return $html;
    101. }
    102.  
    103.  
    104. /**
    105. * Create the HTML for a list footer
    106. *
    107. * @param   array  $list  Pagination list data structure.
    108. *
    109. * @return  string  HTML for a list footer
    110. *
    111. * @since   11.1
    112. */
    113. function pagination_list_footer($list)
    114. {
    115.     $html = "<div class=\"list-footer\">\n";
    116.  
    117.     $html .= "\n<div class=\"limit\">" . JText::_('JGLOBAL_DISPLAY_NUM') . $list['limitfield'] . "</div>";
    118.     $html .= $list['pageslinks'];
    119.     $html .= "\n<div class=\"counter\">" . $list['pagescounter'] . "</div>";
    120.  
    121.     $html .= "\n<input type=\"hidden\" name=\"" . $list['prefix'] . "limitstart\" value=\"" . $list['limitstart'] . "\" />";
    122.     $html .= "\n</div>";
    123.  
    124.     return $html;
    125. }


    :eek:
     
  4. Offline

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

    Регистрация:
    18.08.2015
    Сообщения:
    5
    Симпатии:
    0
    Это понятно, а что прописать, чтобы была ссылка показать все результаты рядом с разбивкой страницы?

    << туда 1 2 3 4 сюда >> Показать все результаты на одной странице?
     
  5. lev
    Offline

    lev специалист

    Регистрация:
    21.12.2007
    Сообщения:
    676
    Симпатии:
    40
    Пол:
    Мужской
    Количество новостей и колонок на Главной странице


    Наверное, одним из самых распространенных вопросов являются вопросы "как изменить количество колонок на главной странице" и "как установить количество выводимых новостей на главной странице". На самом деле, все достаточно просто.

    Количество новостей и колонок на главной странице задается в настройках соответствующего пункта меню.

    Для изменения настроек отображения Главной страницы выполняем следующие действия:

    1. Авторизуемся в административной панели сайта
    2. Выбираем в меню Меню -> mainmenu.
    3. Попадаем на страницу Менеджер меню (Menu Manager)
    4. Выбираем пункт меню Главная (Frontpage)
    5. На открывшейся странице, справа располагаются Параметры главной страницы
    6. После изменения параметров нажимаем кнопку Сохранить (Save) для сохранения изменений

    Ниже приведено описание параметров Главной страницы, которые отвечают за настройку количества отображаемых новостей, количества колонок.

    • # Полностью (#Leading) — количество новостей, отображаемых во всю ширину области контента (вне зависимости от количества колонок). 0 означает, что ни одна новость не будет отображаться во всю ширину.
    • # Вступление (#Intro) — количество новостей, у которых показывается только вступительный текст.
    • Колонки (Columns) — когда включено отображение вступительного текста, данный параметр определяет во сколько колонок выстраивать материалы.
    • # Ссылки (#Links) — количество материалов, отображаемых как однострочные ссылки внизу страницы.
    • # Пагинация (#Pagination) — включение отображения постраничной навигации для списка материалов.

    Примечание: данные параметры работают, только для Главной страницы (com_frontpage) и для любой страницы созданной в режиме "Блог-материалы раздела" (Blog-section) или "Блог-содержимое категории" (Blog Category).

    Оставшиеся параметры позволяют настраивать порядок сортировки новостей, отображение навигации по страницам, отображение автора, даты новости и т.д. Но это уже тема для отдельной статьи.
     
  6. Offline

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

    Регистрация:
    18.08.2015
    Сообщения:
    5
    Симпатии:
    0
    Спасибо за ФАК конечно, но я не об этом.

    Есть категории со статьями, в них идет разбивка по страницам, вот там где разбивка поставить кнопку "показать все". Чтобы все материалы вывелись на одной странице выбранной категории.
     
  7. lev
    Offline

    lev специалист

    Регистрация:
    21.12.2007
    Сообщения:
    676
    Симпатии:
    40
    Пол:
    Мужской
    Найди \libraries\cms\pagination\pagination.php
    // Set the pagination iteration loop values. Установите значение цикла с нумерацией страниц итерации. стр 143
    Код (CODE):
    1. $displayedPages = 10;

    меняй на любое значение :p
     
  8. Offline

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

    Регистрация:
    18.08.2015
    Сообщения:
    5
    Симпатии:
    0
    Так мне надо чтобы пагинация осталась прежняя и добавить кнопку посмотреть все, как дополнительную функцию.

    Вот так http://prntscr.com/863tue
     
  9. lev
    Offline

    lev специалист

    Регистрация:
    21.12.2007
    Сообщения:
    676
    Симпатии:
    40
    Пол:
    Мужской
    http://jsfiddle.net/rgkcd1zr/
    честно не представляю как это работает если только jquery, чтобы менял 10 на 100
    но не знаю будет это работать или нет :(
     
  10. Offline

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

    Регистрация:
    18.08.2015
    Сообщения:
    5
    Симпатии:
    0
    Это не то, я пытаюсь добиться чтобы по клику на "Показать все" выводились все материалы на одной странице простыней.
     

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

Загрузка...