Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Общие вопросы (http://forum.typo3.ru/forumdisplay.php?f=12)
-   -   Templavoila брать значение поля у родительской страницы (http://forum.typo3.ru/showthread.php?t=6298)

proctozont 20.05.2008 02:47

Templavoila брать значение поля у родительской страницы
 
Заранее прошу прощения, тема уже изъедена, но решения я на форуме не нашел.

В чем суть проблемы: создал шаблон, все великолепно работает, но в шаблоне есть поля которые являются простыми текстовыми, ссылками, или изображениями, а не полями контента. Существуют страницы у которых эти поля должны быть собственными, а некоторые должны наследовать значения у родительских страниц, DS и TO у всех одинаковые. По аналогии пытался решить вопрос как и с контентом, ничего не вышло.

Кусок DS
Код:

<image_1 type="array">
        <type>array</type>
        <tx_templavoila type="array">
                <title>Изображение 1</title>
                <eType>none</eType>
        </tx_templavoila>
        <el type="array">
                <image_1_img type="array">
                        <tx_templavoila type="array">
                                <title>Изображение</title>
                                <sample_data type="array">
                                        <numIndex index="0"></numIndex>
                                </sample_data>
                                <eType>imagefixed</eType>
                                <TypoScript>
                                        10 = IMAGE
                                        10.file = GIFBUILDER
                                        10.file {
                                        XY = 200,150
                                        10 = IMAGE
                                        10.file.import = uploads/tx_templavoila/
                                        10.file.import.current = 1
                                        10.file.import.listNum = 0
                                        10.file.maxW = 200
                                        10.file.minW = 200
                                        10.file.maxH = 150
                                        10.file.minH = 150
                                        }
                                                       
                                        10.stdWrap.typolink.parameter.field = image_1_link
                                </TypoScript>
                        </tx_templavoila>
                        <TCEforms type="array">
                                <config type="array">
                                        <type>group</type>
                                        <internal_type>file</internal_type>
                                        <allowed>gif,png,jpg,jpeg</allowed>
                                        <max_size>1000</max_size>
                                        <uploadfolder>uploads/tx_templavoila</uploadfolder>
                                        <show_thumbs>1</show_thumbs>
                                        <size>1</size>
                                        <maxitems>1</maxitems>
                                        <minitems>0</minitems>
                                </config>
                                <label>Изображение</label>
                        </TCEforms>
                </image_1_img>
                <image_1_link type="array">
                        <type>no_map</type>
                        <tx_templavoila type="array">
                                <title>Ссылка</title>
                                <sample_data type="array">
                                        <numIndex index="0"></numIndex>
                                </sample_data>
                                <eType>link</eType>
                                <TypoScript>
                                        10 = TEXT
                                        10.typolink.parameter.current = 1
                                </TypoScript>
                        </tx_templavoila>
                        <TCEforms type="array">
                                <config type="array">
                                        <type>input</type>
                                        <size>15</size>
                                        <max>256</max>
                                        <checkbox></checkbox>
                                        <eval>trim</eval>
                                        <wizards type="array">
                                                <_PADDING type="integer">2</_PADDING>
                                                <link type="array">
                                                        <type>popup</type>
                                                        <title>Link</title>
                                                        <icon>link_popup.gif</icon>
                                                        <script>browse_links.php?mode=wizard</script>
                                                        <JSopenParams>height=300,width=500,status=0,menubar=0,scrollbars=1</JSopenParams>
                                                </link>
                                        </wizards>
                                </config>
                                <label>Ссылка</label>
                        </TCEforms>
                </image_1_link>
        </el>
</image_1>

пытался писать
Код:

10 = IMAGE
10.file = GIFBUILDER
10.file {
        XY = 200,150
        10 = IMAGE
        10.file.import = uploads/tx_templavoila/
        10.file.import.current = 1
        10.file.import.ifEmpty = register:tx_templavoila_pi1.parentRec.uid
        10.file.import.listNum = 0
        10.file.maxW = 200
        10.file.minW = 200
        10.file.maxH = 150
        10.file.minH = 150
}

или просто
Код:

10 = IMAGE
10.file = GIFBUILDER
10.file {
        XY = 200,150
        10 = IMAGE
        10.file.import = uploads/tx_templavoila/
        10.file.import.current = 1
        10.file.import.ifEmpty = 233
        10.file.import.listNum = 0
        10.file.maxW = 200
        10.file.minW = 200
        10.file.maxH = 150
        10.file.minH = 150
}

пытался использовать ifBlank
эффекта ноль

в документации к TV описано как получить доступ родительской записи:
register:tx_templavoila_pi1.parentRec.uid

но мне не ясно как обратиться к конкретным данным в родительской записи

Заранее спасибо.

filippoff 21.05.2008 20:42

думаю, kb_tv_cont_slide вам поможет

proctozont 26.05.2008 11:19

Заменил код

PHP код:

    10 IMAGE
    10.file 
GIFBUILDER
    10.file 
{
        
XY 200,150
        10 
IMAGE
        10.file
.import uploads/tx_templavoila/
        
10.file.import.current 1
        10.file
.import.listNum 0
        10.file
.maxW 200
        10.file
.minW 200
        10.file
.maxH 150
        10.file
.minH 150
    


на

PHP код:

    10 IMAGE
    10.file 
GIFBUILDER
    10.file 
{
        
XY 200,150
        10 
IMAGE
        10.file
.import uploads/tx_templavoila/


        
10.file.import.cObject{
            
postUserFunc tx_kbtvcontslide_pi1->main
            postUserFunc
{
            
field image_1_img
            languageFallback 
0
            
}
        }

        
10.file.import.listNum 0
        10.file
.maxW 200
        10.file
.minW 200
        10.file
.maxH 150
        10.file
.minH 150
    


Непомогло к сожалению, или я что-то сделал не так?

Существуют ли другие способы решения данной проблемы?

Как хотя-бы забирать значения из какой-то конкретной записи, например из корня,
очень не хочется это вшивать в DS.

NiKRON 27.05.2008 02:13

чего-то_там.data = register:tx_templavoila_pi1.parentRec.header

таким образом вы обратитесь к заголовку этого элемента контента.


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

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