Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Тематические форумы > TypoScript практикум

Ответ
 
Опции темы Опции просмотра
Старый 09.04.2007, 11:50   #1
lexun
Новенький
 
Регистрация: 19.03.2007
Сообщений: 6
По умолчанию tt_news pageBrowser 2 бокса на одной странице

Доброго времени суток.
Версия typo3: 4.1.1
Версия tt_news: 2.5.0

Задача: вывод на одной странице несколько (LIST) блоков разных разделов, сделанных на базе новостей.Один работает как вывод с постраничной разбивкой новостей, а второй выдает первые 6 картинок с другого раздела новостей расположенных в 2 столбика.

Проблема: При щелчке на пагинатор 1-го блока срабатывает переход на другую страницу не только 1-го блока но и 2-го.

Вопрос: как устранить такой эффект.

PS: У меня обработка 2-го блока заложена в шаблоне главной страницы, а обработка блока с пагинатором идет непосредственно в шаблоне страницы новостей. Возможно концепция не верная но я только неделю назад познакомился с typo3.

http://beta.i-box.ru/index.php?id=2
Первый блок = Новости
Второй блок = Партнеры


Это TS для блока вывода картинок:

lib.partnerLatestLeft < plugin.tt_news
lib.partnerLatestLeft{

code >
relPathPrefix = fileadmin/template/i-box/
templateFile = fileadmin/template/i-box/tt_news_partner_01.html
code = LIST
pid_list >
pid_list = 23 # the pids of the pages where your news are stored
singlePid = 23
listStartId = 0
limit = 3
pageBrowser >
catImageMode = 0
catTextMode = 0
noPageBrowser = 1
}

lib.partnerLatestRight < plugin.tt_news
lib.partnerLatestRight{

code >
relPathPrefix = fileadmin/template/i-box/
templateFile = fileadmin/template/i-box/tt_news_partner_01.html
code = LIST
pid_list >
pid_list = 23 # the pids of the pages where your news are stored
pageBrowser >
singlePid = 23
listStartId = 3
limit = 3

catImageMode = 0
catTextMode = 0
noPageBrowser = 1
}

Ниже приведен TS блока с постраничной разбивкой:
lib.newsLatest < plugin.tt_news
lib.newsLatest{
displayList {
date_stdWrap.strftime= %d.%m.%y
time_stdWrap.strftime= %H:%M
}
userPageBrowserFunc = user_substPageBrowser

pageBrowser {
maxPages = 20
# set this to '0' if you want the pagebrowser to display only numbers
showPBrowserText = 0
# tableParams = cellpadding=2
showResultCount = 0
alwaysPrev = 1
}
# Example for overriding values from locallang.php with html-code that displays images
_LOCAL_LANG.default {
pi_list_browseresults_prev = <img src="typo3/gfx/pil2left.gif" border="0" height="12" width="7" alt="previous" title="previous">
pi_list_browseresults_next = <img src="typo3/gfx/pil2right.gif" border="0" height="12" width="7" alt="next" title="next">
}

code >
relPathPrefix = fileadmin/template/i-box/
templateFile = fileadmin/template/i-box/tt_news_template_01.html
code = LIST
pid_list >
pid_list = 2
singlePid = 13
limit = 3
showResultCount = 0
catImageMode = 0
catTextMode = 1
}
lexun вне форума   Ответить с цитированием
Старый 09.04.2007, 14:09   #2
Pavel Antonov
Senior Member
 
Аватар для Pavel Antonov
 
Регистрация: 01.10.2004
Адрес: Россия, Москва
Сообщений: 1,204
Отправить сообщение для Pavel Antonov с помощью ICQ
По умолчанию

Не будет работать. Любые блоки tt_news используют одни и теже GET-параметры.

Нужен ли Вам для такой страницы пейджинг? Уберите его и сделайте переход не отдельные страницы для каждой группы новостей.
__________________
Павел Антонов
Rich Media Development Ltd.
Блог: http://codeline.richmd.ru/
Pavel Antonov вне форума   Ответить с цитированием
Старый 10.04.2007, 19:24   #3
lexun
Новенький
 
Регистрация: 19.03.2007
Сообщений: 6
По умолчанию

Пейдинг нужен для этой страницы обязательно.
Решил проблему назначив в блоке №2 первой колонке LATEST а второй LIST
ну и соответственно изменил шаблон для идентичности вывода LIST и LATEST

У меня возник другой вопрос:
Как мне в пользовательской функции добраться до свойства класса <a> у активной и не активной ссылки
Вот моя функция для пагинатора:

PHP код:
function user_substPageBrowser($markerArray$conf) {
    
$pObj = &$conf['parentObj']; 

#debug($pObj->conf);

    
$showResultCount $pObj->conf['pageBrowser.']['showResultCount'];
    
$tableParams "";
    
$pointer $pObj->piVars['pointer'];
    
$count $pObj->internal['res_count'];
    
$results_at_a_time t3lib_div::intInRange($pObj->internal['results_at_a_time'], 11000);
    
$maxPages t3lib_div::intInRange($pObj->internal['maxPages'], 1100);
    
$max t3lib_div::intInRange(ceil($count $results_at_a_time), 1$maxPages);
    
$pointer intval($pointer);
    
$links = array();

    if (
$pObj->pi_alwaysPrev >= 0) {
        if (
$pointer 0) {
            
$links[] = '' $pObj->pi_linkTP_keepPIvars('<< ', array('pointer' => ($pointer-1?$pointer-1:'')), $pObj->allowCaching) . '';
            } else {
            
$links[] = '<a><< </a>';
        }
    }
    for(
$a 0;$a $max;$a++) {
        
$links[] = '' . ($pointer == $a '':'') . $pObj->pi_linkTP_keepPIvars(trim($pObj->pi_getLL('pi_list_browseresults_page''Page') . ' ' . ($a 1)), array('pointer' => ($a?$a:'')), $pObj->allowCaching) . '';
    }
    if (
$pointer ceil($count $results_at_a_time)-1) {
        
$links[] = '' $pObj->pi_linkTP_keepPIvars(' >>', array('pointer' => $pointer 1), $pObj->allowCaching) . '';
    } else {
        
$links[] = '<a> >></a>';
    }

    
$pR1 $pointer $results_at_a_time 1;
    
$pR2 $pointer $results_at_a_time $results_at_a_time;
    
$sTables '

        <!--
            List browsing box:
        -->
                    ' 
implode(''$links) . '
        '
;

    
$markerArray['###BROWSE_LINKS###'] = $sTables;

    return 
$markerArray;

lexun вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Два контента на одной странице - что прочесть? Алексей Общие вопросы 6 05.10.2005 11:27
Два CSS на одной странице Konstantin Общие вопросы 2 17.08.2005 16:48
news: SINGLE и LATEST на одной странице Антон Мельников Общие вопросы 5 12.12.2003 21:34


Часовой пояс GMT +4, время: 06:06.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория