Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Общие вопросы (http://forum.typo3.ru/forumdisplay.php?f=12)
-   -   Получение значения в {field: }? (http://forum.typo3.ru/showthread.php?t=9348)

Илья 16.03.2011 04:38

Получение значения в {field: }?
 
Привет.
Использую галерею chgallery совместно с perfectlightbox.
Экземпляры галереи вставляются в новости.
Все работает, но не совсем как надо.
Имея несколько новостей (3 новости) с разными галереями (по 6 фото) на одной странице получаю в лайтбоксе все фотографии в кучу, вместо 3-х галерей по 6 фото вижу одну на 18!
Это происходит из-за неправильных настроек в ссылках на фото:
PHP код:

typolink {
parameter.override.cObject IMG_RESOURCE
parameter
.override.cObject.file.import.data TSFE:lastImageInfo|origFile
parameter
.override.cObject.file.maxW 800
parameter
.override.cObject.file.maxH 600

ATagParams 
rel="lightbox"

ATagParams.override rel="lightbox[sb{field:uid}]"

ATagParams.insertData 1


Этот кусок:
PHP код:

rel="lightbox[sb{field:uid}]" 

генерит одинаковый код ДЛЯ ВСЕХ 3-Х галерей, подставляя вместо {field:uid} - uid контент элемента, в который вставлен плагин новостей.
Возможно ли вставлять вместо этого id новости, в которую вставлена галерея, или название директории, где лежат фото? Есть ли универсальный метод для этого?
PS Или доступ к новостям можно получить только с помощью хука?

Илья 17.03.2011 13:38

Вот что требовалось.
Есть такой html
Код:

        <div class="class1">
          <div class="class2"> 
              <div class="class3">
                    <a rel="lightbox">
                    <a rel="lightbox">
              </div>
          </div>
        </div>
        <div class="class1">
          <div class="class2"> 
              <div class="class3">
                    <a rel="lightbox">
                    <a rel="lightbox">
              </div>
          </div>
        </div>
        ...

надо сделать в первом диве "class1" у всех <a rel="lightbox0">, во втором - <a rel="lightbox1"> и так далее...
В результате сделал на jQuery
Код:

$("div.class1").each(function (i) {
    $("a", this).attr("rel", "lightbox" + i);
});


-=UncleByte=- 17.03.2011 16:04

Может быть помогло бы использовать insertData немного по-другому: typolink.stdWrap.insertData = 1 или вовсе даже stdWrap ко всему объекту содержащему эти ссылки.


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

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