标签应用和跨站js调用_PHPCms教程
1.标签应用
网页美工设计者往往要在前台模板中输出变量或一段程序,但是他们对这些程序是不懂的,所以要将这些程序简化成像写HTML标记一样,这样他们就轻易写了。而这些简化的标记被成为标签。这些标签在执行是时候还会被提取出来重新还原成程序被执行。下面举几个例子说明:
现在看这段代码在前台被编译后的样子:
这写标签不是随便乱写的,只有后台提供是那写才可以插到前台里面。
提供这些标签的地方在每个频道里面。就以文章频道为例,打还网站后台,在后台首页的导航栏中选择“网站频道”,如图:
加载完成后,在页面的左框架中选择“文章”点击。在加载后的页面的左框架中选择“高级治理”中的“标签调用治理”点击。如图:
在新加载的页面截图如下:
在这个页面定义的标签都可以使用。
在举些在前台模板中插标签的例子,如图:
此段代码经过编译之后在前台显示的内容为:
像这些里面有中文的标签叫作中文标签,一般的中文标签都是用{tag_中文名}的形式。还有一些标签里面只有英文,比如“{$cat[catname]}”这个标签的作用就是输出数组cat里catname的值。这是前台模版里典型输出变量的标签,格式是{变量}。
下面的截图中大量的使用了标签:
这个页面里使用了像{if $subheading}<h2>--{$subheading}<h2>{/if}这是一个判定标签,当{if $subheading}里的变量$subheading被赋值且值不为0、空时就回显示{if}与{/if}之间的值,即<h2>--{$subheading}<h2>在浏览器上被显示出来。这个是条件判定标签。还有一种是循环标签,见图:
{loop $a $b} * {/loop} 或者 {loop $a $b $c} * {/loop} ,{loop $a $b} * {/loop}被解析成<? if(is_array($a)) foreach($a AS $b) { ?> * <? } ?> ,而{loop $a $b $c} * {/loop}则被解析成 <? if(is_array($a)) foreach($a AS $b=>$c) {> * <}>
注重if和loop语法应该写在html注释符之间,这样可以避免在编辑工具中难看,例如:
这样写 if
- 相关链接:
- 教程说明:
PHPCms教程-标签应用和跨站js调用。