zoukankan      html  css  js  c++  java
  • 五、smarty模板继承特性

    1、如何去实现模板之间的继承

       继承是发生在模板之间的事,和PHP程序没有关系的

       方法一:

       在模板中使用<{extends}>函数实现模板的继承

    <{extends file=”模板文件名”}>

            或

    <{extends ”模板文件名”}>

       注意:如果使用<{extends}>函数,必须用在子模板中的第一行

       方法二:

       在PHP中使用$smarty对象中的display()方法      

    $smarty->display(“extends:模板1|模板2|模板3”)  //表示模板2继承模板1,模板3继承模板2

    2、在子模板中覆盖父模板中部分内容区域

       在父模板中声明一个区域“块”<{block}>,如果在子模板中需要修改多个父模板中的位置,就需要声明多个块,也需要为每个块起个名字

            注意:

                   1)  在父模板中定义<{block}>块,对结果没有变化,只是为了在子模板中能找到区域源并将其内容可以覆盖

                   2)  如果子模板继承了父模板,那么它只能包含<{block}>标签内容,其它内容模板都会忽略

    3、合并子模板和父模板的<{block}>标签中的内容

        1)使用<{block}>属性append添加 或 prepend追加

             //append是在父模板的后面添加

             //prepend是在父模板的前面追加

        2)使用smarty的保留变量<{$smarty.block.child}>作为占位符号,可将子模板<{block}>中内容插入到父模板中的任何位置

        3)使用smarty的保留变量<{$smarty.block.parent}>作为占位符号,可将父模板<{block}>中内容插入到子模板中的任何位置

  • 相关阅读:
    使用 libevent 和 libev 提高网络应用性能
    An existing connection was forcibly closed by the remote host
    各种浏览器的兼容css
    vs输出窗口,显示build的时间
    sass
    网站设置404错误页
    List of content management systems
    css footer not displaying at the bottom of the page
    强制刷新css
    sp_executesql invalid object name
  • 原文地址:https://www.cnblogs.com/yxpblog/p/4224354.html
Copyright © 2011-2022 走看看