簡體   English   中英

將php腳本中的內容包含到排字中

[英]Include contents from a php script into typoscript

我想使用一個lib對象將一個php腳本的輸出包含到typoscript中...我不幸失敗了:)

我這樣聲明lib對象:

TS:

includeLibs.bannerLib = fileadmin/banner/banner.php

lib.banner = USER
lib.banner{
    userFunc = user_banner->user_showBanner
}

然后,我需要使用變量(?)將其包括在TS的其余部分中:

{f:cObject(typoscriptObjectPath:lib.banner)}

這很可能在失敗的地方。 我沒有使用流體,但是我猜f:cObject是指流體模板嗎?

這是我正在使用的(非常簡單的)PHP腳本:

class user_banner{

    public $cObj;

    /**
     * Scans the files in the images folder
     * for images and returns it, if present
     */

    public function user_showBanner($content, $conf){

        $images = scandir('images');
        return implode(',', $images);

    }
}

我究竟做錯了什么??? 我正在使用Typo3 4.6.x

[編輯]

該頁面是由一些T3裂縫制成的,並且整個內容都包裹在一個lib對象中,然后使用某種lib呈現(我猜)。 這是它的樣子(部分):

lib{

        markupBodyColumns {
        1 >
        2 {
            value (
            <div id="col2" class="col">

            //here I try to insert my banner 
            <span class="bannerClass">{$lib.banner}</span>

                <div class="pageTitle">
                    {renderLib:markupBodyPageTitle}
                </div>
                <div class="contentWraper">
                    <div class="content">
                        {renderLib:markupBody}
                    </div>
                    {renderLib:markupFooter}
                </div>
            </div>
            )
        }

}

[編輯2]

好吧,這真讓我發瘋...確實如此...

第一次更正:我使用的是Typo3 4.6.x,而不是前面提到的4.7.x

我試圖將userFunc包含在打字稿中,但它拒絕吐出任何東西。 上面的PHP函數(類)保持不變。 類中的函數根本沒有被調用。

在打字稿中,我嘗試過:

第一次嘗試:

includeLibs.user_banner = fileadmin/banner/user_banner.php

lib.myBanner = USER_INT
lib.myBanner{
    userFunc = user_banner->user_showBanner
}

page.100000 < lib.myBanner

無任何輸出

第二次嘗試:

page = PAGE
page.200000 = USER_INT
page.200000.userFunc = user_banner->user_showBanner

再次-不輸出...

我到底在做什么錯???

如果您未在網站中使用Fluid,則不會產生任何輸出,因為

{f:cObject(typoscriptObjectPath:'lib.banner')}

是Fluid ViewHelper的內聯符號,只能在Fluid模板中使用。

使用TypoScript和userFunc,您將在lib.banner中獲得showBanner的返回值。 您只需要將其顯示在網站上的某個位置即可。

如果您的網站中有PAGE對象,則可以如下將其添加到頁面中:

page.20141031 < lib.banner

(其中20141031是唯一編號,尚未用於PAGE對象的另一部分。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM