Просмотр полной версии : Пагинация
Добрый день, может кто подсказать или дать пример как сделать пагинацию контента, если в БД таблица с данными к примеру товары.
Нашел расширения, кто та с ними работал ?
http://typo3.org/extensions/repository/?id=23&L=0&q=paginate
Николай Сипко
22.01.2016, 15:27
Нашел расширения, кто та с ними работал ?
http://typo3.org/extensions/repository/?id=23&L=0&q=paginate
readme.txt
==========
First we need to declare name space in your template file
=> {namespace pg=JS\JsPaginate\ViewHelpers}
then after we can use following pagination script. and need to add our records [ array ] in objects
<pg:Paginate objects="{faq}" as="paginatedObject" configuration="{itemsPerPage: 5, insertAbove: 1, insertBelow: 1, maximumVisiblePages: 5}">
<div class="faq-list">
<f:for each="{paginatedObject}" as="list" iteration="itemIteration">
<div class="even {f:if(condition: itemIteration.isOdd , then: 'odd')}">
{paginatedObject.title}
</div>
</f:for>
</div>
</pg:Paginate>
/*********************************** Pagination Configuration ************************************************** ****/
1) itemsPerPage = 5
5 records will display on first page
2) insertAbove = 1
if insertAbove is true then pagination will display before content
3) insertBelow = 1
if insertAbove is true then pagination will display after content
4) maximumVisiblePages = 5
Maximum Visible Pages 5 in pagination.
setup.text
==========
plugin.tx_jspaginate {
settings{
hideDotInNavigation = {$plugin.tx_jspaginate.settings.hideDotInNavigatio n}
}
}
constants.txt
=============
plugin.tx_jspaginate {
settings{
hideDotInNavigation = 0
}
}
А что непонятно?
readme.txt
==========
First we need to declare name space in your template file
=> {namespace pg=JS\JsPaginate\ViewHelpers}
then after we can use following pagination script. and need to add our records [ array ] in objects
<pg:Paginate objects="{faq}" as="paginatedObject" configuration="{itemsPerPage: 5, insertAbove: 1, insertBelow: 1, maximumVisiblePages: 5}">
<div class="faq-list">
<f:for each="{paginatedObject}" as="list" iteration="itemIteration">
<div class="even {f:if(condition: itemIteration.isOdd , then: 'odd')}">
{paginatedObject.title}
</div>
</f:for>
</div>
</pg:Paginate>
/*********************************** Pagination Configuration ************************************************** ****/
1) itemsPerPage = 5
5 records will display on first page
2) insertAbove = 1
if insertAbove is true then pagination will display before content
3) insertBelow = 1
if insertAbove is true then pagination will display after content
4) maximumVisiblePages = 5
Maximum Visible Pages 5 in pagination.
setup.text
==========
plugin.tx_jspaginate {
settings{
hideDotInNavigation = {$plugin.tx_jspaginate.settings.hideDotInNavigatio n}
}
}
constants.txt
=============
plugin.tx_jspaginate {
settings{
hideDotInNavigation = 0
}
}
А что непонятно?
setup.text, constants.txt
где эти файлы находятся ?
objects="{faq}"
Где создается данный объект ? в тайпо скрипте ? или в файле ? можно пример если не трудно.
Николай Сипко
25.01.2016, 13:16
Где создается данный объект ? в тайпо скрипте ? или в файле ? можно пример если не трудно.
Устанавливаем расширение js_paginate
http://typo3ua.com/extensions/ustanovka-rasshirenij/
=======
Находим в /var/www/typo6/typo3conf/ext/js_paginate
=======
Читаем readme.txt:
First we need to declare name space in your template file
(Во-первых, мы должны объявить пространство имен в вашем ФАЙЛЕ ШАБЛОНА)
Вставляем "пространство имен в файл шаблона"
=> {namespace pg=JS\JsPaginate\ViewHelpers}
=======
then after we can use following pagination script. and need to add our records [ array ] in objects
(после этого можно использовать следующие нумерации страниц сценария. и нужно добавить ваши записи http://php.net/manual/ru/language.types.array.php в объекты)
=======
Если нужно, изменяем в pagination script цифры Configuration
<pg:Paginate objects="{0: '1',1: '2',2: '3', 3: '4'}"
с таким примером делал, но сама пагинация не работает
index.php?id=11&tx__%5B%40widget_0%5D%5BcurrentPage%5D=2&cHash=e9ec68e3bb01b05376b30d78560fc617
Николай Сипко
25.01.2016, 15:18
<pg:Paginate objects="{0: '1',1: '2',2: '3', 3: '4'}"
с таким примером делал, но сама пагинация не работает
use following pagination script?
<pg:Paginate objects="{faq}" as="paginatedObject" configuration="{itemsPerPage: 5, insertAbove: 1, insertBelow: 1, maximumVisiblePages: 5}">
<div class="faq-list">
<f:for each="{paginatedObject}" as="list" iteration="itemIteration">
<div class="even {f:if(condition: itemIteration.isOdd , then: 'odd')}">
{paginatedObject.title}
</div>
</f:for>
</div>
</pg:Paginate>
Проблема в том, что пагинация не листает страницы. Сами сслыки пагинации есть(prev, 1, next). Вот при переходе к примеру на след страницу в пагинации, то ничего не происходит только хеш в браузерной строке меняется:
страница 1: tx__%5B%40widget_0%5D%5BcurrentPage%5D=3&cHash=07e6d6a99c256612dbd745b5a23d65b9
страница next:
tx__%5B%40widget_0%5D%5BcurrentPage%5D=2&cHash=e9ec68e3bb01b05376b30d78560fc617
Такого рода ссылки отображаются, но как я выше сказал ничего на странице не происходит. Уверен, что тут ничего сложного нет, только не могу понять, по какому принципу работает пагинация.
Николай Сипко
25.01.2016, 17:33
Уверен, что тут ничего сложного нет, только не могу понять, по какому принципу работает пагинация.
Может,вписать setup и constants расширения в свойства страницы?
Может,вписать setup и constants расширения в свойства страницы?
Ничего не меняется к сожалению.
Кстати такая же ситуация происходит при использовании встроенного в TYPO3 виджета pagination.
Николай Сипко
25.01.2016, 20:00
Проблема в том, что пагинация не листает страницы. Сами сслыки пагинации есть(prev, 1, next). Вот при переходе к примеру на след страницу в пагинации, то ничего не происходит только хеш в браузерной строке меняется:
страница 1: tx__%5B%40widget_0%5D%5BcurrentPage%5D=3&cHash=07e6d6a99c256612dbd745b5a23d65b9
cHash is one of the most mysterious and misunderstood parameters in TYPO3
http://www.dmitry-dulepov.com/2009/04/when-do-you-need-chash-in-typo3.html
?
Typo3 6.0 - Generate a cHash (Note: differs from cache identifier in Extbase caching framework)
Создание cHash ( Примечание : отличается от идентификатора кэша в Extbase рамках кэширования)
https://gist.github.com/bjrnqprs/5487083
=======
Но вообще-то
js_paginate
Version 1.0.3 stable
Last updated January 23, 2016
First upload November 19, 2015
Downloads 504
Category
Dependencies TYPO3 (6.0.0 - 7.6.99)
=======
Может, что-то с установкой?
pagination script работает
Не работает сама js_paginate
?
cHash is one of the most mysterious and misunderstood parameters in TYPO3
http://www.dmitry-dulepov.com/2009/04/when-do-you-need-chash-in-typo3.html
?
Typo3 6.0 - Generate a cHash (Note: differs from cache identifier in Extbase caching framework)
Создание cHash ( Примечание : отличается от идентификатора кэша в Extbase рамках кэширования)
https://gist.github.com/bjrnqprs/5487083
=======
Но вообще-то
js_paginate
Version 1.0.3 stable
Last updated January 23, 2016
First upload November 19, 2015
Downloads 504
Category
Dependencies TYPO3 (6.0.0 - 7.6.99)
=======
Может, что-то с установкой?
pagination script работает
Не работает сама js_paginate
?
Кстати использую версию 7.6.2
API 7 версии вроде совместим с 6, но Dependencies TYPO3 (6.0.0 - 7.6.99) - должно поддерживать плагин. Ошибок в логах по этому модулю не наблюдается. И я уже упомянул, что встроенный виджет paginate (https://typo3.org/api/typo3cms/class_t_y_p_o3_1_1_c_m_s_1_1_fluid_1_1_view_helper s_1_1_widget_1_1_paginate_view_helper.html) работает аналогично плагина js_paginate, и проблема у них одна и та же.
Николай Сипко
26.01.2016, 14:50
Может, могучим народным методом тыка попробовать включить js из paginate прямо в шаблон?
Хотя по идее и так должна работать: может, переставить аккуратно?
"Кстати использую версию 7.6.2"
А я не рискую, сижу на 6-й
Николай Сипко
26.01.2016, 17:29
В 7.6.2 drag-and-drop страниц, TemplaVoila не работают
И других глюков хватает
http://forum.typo3.biz/showthread.php?t=11921
Может, правда, в ней дело?
Может, могучим народным методом тыка попробовать включить js из paginate прямо в шаблон?
Хотя по идее и так должна работать: может, переставить аккуратно?
"Кстати использую версию 7.6.2"
А я не рискую, сижу на 6-й
Для интереса скачал 6 версию typo3 и что вы думаете..?
Без изменений...А вы у себя пробовали устанавливать пагинатор?
Если да, то на какую версию typo3 подключали модуль?
В 7.6.2 drag-and-drop страниц, TemplaVoila не работают
И других глюков хватает
http://forum.typo3.biz/showthread.php?t=11921
Может, правда, в ней дело?
Не думаю, тем более, что я пробовал в 6 версии установить этот же модуль(js_paginate). TemplaVoila уже не поддерживается разработчиками. Сейчас рулит fluid - его надо юзать. Проблема скорее всего в документации. Под 7 версию мало доков и приходится только догадываться, какой кусок кода использовать. Смотрел доки по API Typo3 6 версия и они близки к 7 версии. Я отошел от темы.
Есть версия, что я неправильно создаю объект с данными, чтобы плагин его нормально отработал.
Вот пример:
{namespace pg=JS\JsPaginate\ViewHelpers}
<pg:Paginate objects="{0: 'val1', 1: 'val2', 2: 'val3', 3: 'val4', 4: 'val5'}" as="paginatedObject" configuration="{itemsPerPage: 2, insertAbove: 0, insertBelow: 1, maximumVisiblePages: 5}">
<div class="faq-list">
<f:for each="{paginatedObject}" as="list" iteration="itemIteration">
<div class="even {f:if(condition: itemIteration.isOdd , then: 'odd')}">
{list}
</div>
</f:for>
</div>
</pg:Paginate>
Николай Сипко
26.01.2016, 19:13
TemplaVoila уже не поддерживается разработчиками. Сейчас рулит fluid - его надо юзать.
У себя устанавливать не пробовал
Но если так, то дело, скорей всего, в "кривой" установке
В Include шаблона его включать не нужно?
=======
А насчет "TemplaVoila
Extension key templavoila
Version 2.0.4 stable
Last updated June 20, 2015
First upload August 16, 2003
Downloads 366,915
Category
Dependencies
PHP (5.5.0 - 5.6.99)
TYPO3 (7.0.0 - 7.9.99)
==============
static_info_tables
Conflicts
kb_tv_clipboard (0.1.0)
templavoila_cw (0.1.0)
eu_tradvoila (0.0.2)
me_templavoilalayout
me_templavoilalayout2
Почему "не поддерживается"?
Почему "не поддерживается"?
Значит ошибся.
Николай Сипко
26.01.2016, 23:32
Сейчас рулит fluid - его надо юзать.
Вопрос из чистого любопытства: как вы шаблонизируете страницы?
Через builder?
Или все же FLUIDTEMPLATE?
Николай Сипко
27.01.2016, 01:30
Значит ошибся.
Довелось пообщаться:
salah
Продвинутый
Последняя активность: 28.12.2015 02:59
"Учитесь, потому что в LTS (стабильной) версии Typo3 7 css styled content уже не будет. Как и Templavoila.
FLUID рулит!"
http://forum.typo3.biz/showthread.php?t=11767
Даже не зная, что расширение fluidcontent_core надо активировать, он утверждал, что с ним и builder сделал сайты:
http://forum.typo3.biz/showthread.php?t=11818
iMoD
Новенький
Регистрация 20.01.2016
Дежавю?
Вопрос из чистого любопытства: как вы шаблонизируете страницы?
Через builder?
Или все же FLUIDTEMPLATE?
На самом деле я не так давно стал разбираться в TYPO3. Прочитав много кол-во статей я пришел к выводу, что fluid оптимальное решение, только порог вхождения гораздо выше, чем использовать готовые модули.
Файлы шаблонов, скрипты, стили, картинки храню пока в папке fileadmin, но думаю со временем перекинуть шаблоны в виде модуля.
Николай Сипко
27.01.2016, 11:48
Файлы шаблонов, скрипты, стили, картинки храню пока в папке fileadmin, но думаю со временем перекинуть шаблоны в виде модуля.
http://typo3buddy.com/typo3-template-tutorial/
Приятной работы!
madcap99
03.06.2017, 00:50
КАК? Уже глаза вытекают, 5-й день мучаюсь с такой же проблемой.
Работает на vBulletin® версия 3.8.1. Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot