Fecshop 小部件

2018-05-24 14:40 更新

Fecshop 小部件

fecshop小部件,不同于fecshop的小部件,fecshop的小部件是集數(shù)據(jù)庫數(shù)據(jù)與view文件
生成的一個(gè)區(qū)塊,譬如網(wǎng)站側(cè)欄的熱銷產(chǎn)品,做成一個(gè)小部件,可以很方便的
在其他頁面進(jìn)行引入。當(dāng)然,fecshop的head header(頭部),footer(尾部)都是小部件實(shí)現(xiàn)的。

小部件結(jié)構(gòu):

小部件由兩部分組成,動(dòng)態(tài)數(shù)據(jù)提供部分 和 提供html代碼的view部分,共同組合 ,顯示出來小部件。

小部件配置:

@fecshop/config/services/Page.php里面進(jìn)行小部件的配置,示例代碼:

'widget' => [
    'class'         => 'fecshop\services\page\Widget',
    'widgetConfig' => [
        'head' => [
            # 動(dòng)態(tài)數(shù)據(jù)提供部分
            'class' => 'fecshop\app\appfront\widgets\Head',
            # 根據(jù)多模板的優(yōu)先級(jí),依次去模板找查找該文件,直到找到這個(gè)文件。
            'view'  => 'widgets/head.php',
            # 緩存
            'cache' => [
                'enable'    => false, # 是否開啟
                'timeout'   => 4500,  # 緩存過期時(shí)間
            ],
        ],
        'header' => [
            'class' => 'fecshop\app\appfront\widgets\Headers',
            # 根據(jù)多模板的優(yōu)先級(jí),依次去模板找查找該文件,直到找到這個(gè)文件。
            'view'  => 'widgets/header.php',
            'cache' => [
                'enable'    => false,
                'timeout'   => 4500,
            ],
        ],
        'topsearch' => [
            'view'  => 'widgets/topsearch.php',
        ],

譬如header小部件,數(shù)據(jù)提供部分為:@fecshop\app\appfront\widgets\Headers.php, view部分為:@fecshop\app\appfront\theme\base\default\widgets\header.php。

其中,head header都是一個(gè)小部件,里面的class是動(dòng)態(tài)數(shù)據(jù)提供部分, view是顯示部分,cache是緩存,您可以通過該配置將緩存打開,以及設(shè)置緩存的超時(shí)時(shí)間。

小部件的view部分遵循fecshop的多模板機(jī)制,可以在二開theme路徑下添加 相應(yīng)文件實(shí)現(xiàn)view部分的重寫,可以通過classMap機(jī)制進(jìn)行動(dòng)態(tài)數(shù)據(jù)提供class文件 的重寫。

小部件的使用:

<?= Yii::$service->page->widget->render('header',$this); ?>

上面?zhèn)鞯牡?code>$this,在view文件中對應(yīng)的變量為:$parentThis,舉例子可以參看head小部件

<?= Yii::$service->page->widget->render('head',$this); ?>

<?php $parentThis->head() ?>

$parentThis就是render()函數(shù)調(diào)用傳入的$this變量。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)