ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
在模板制作中,经常遇到一些网站标签在多个页面调用的问题,通常情况下我们可以通过模板的{dede:include file='文件名称' ismake='是否为dede板块模板(yes/no)'/}标签导入一个文件解决,在DedeCMS的5.3版本默认模板中的head.htm就如通过这样的标记引入到其他模板文件,然后编译成页面头部信息的,但这样以文件形式引入的方式并不适用于少量内容的全局显示,例如你可能有一个栏目,这个栏目需要在全局进行显示,并且这个栏目的调用信息会经常进行改变,但只涉及到一段代码,如果使用{dede:include/}是很难实现的,这时候就需要自定义宏标记来解决这种灵活调用的问题。其实织梦的广告插件也是宏标记的另一种表现形式。 > 在学习自定义宏标记之前,我们先查阅织梦帮助中心模板标签部分,关于自定义宏标记的使用介绍: > 以下为引用的内容: > 标签名称:mytag > 功能说明:用于获取自定义宏标记的内容 > 适用范围:全局使用 > 基本语法: {dede:mytag typeid='0' name=''/} > 参数说明: > name = ’’ 标记名称,该项是必须的属性,以下 2、3是可选属性; > ismake = ’yes|no’ 默认是 no 表示设定的纯HTML代码, yes 表示含板块标记的代码; > typeid = ‘’ 表示所属栏目的ID,默认为 0 ,表示所有栏目通用的显示内容,在列表和文档模板中,typeid默认是这个列表或文档本身的栏目ID。 使用自定义宏标记主要有3个步骤:生成标签,加入模板,内容生成,下面我们从这几个过程来讲解如何使用这个标记。 **生成标签** 新版本V5.3中增加了自定义宏标记可以自动生成并加入织梦标签,这个类似于模板碎片功能。第一种就是直接添加标签,可以点击\[模板\]-\[自定义宏标记\]进入自定义宏标记管理页面,添加一个标签。 ![](https://img.kancloud.cn/95/21/9521275553748260d9022333aa7e03b5_201x368.jpg) 这里需要介绍几个参数: 所属栏目:如果不选择则在所有的栏目中进行显示,如果选择了某个栏目,则只在自定义宏标记只在当前选定的栏目中进行显示 标记名称:用于区分不同标记的名称,建议使用英文和数字的集合 正常显示内容:标签在解析时候被替换的内容,可以为纯文本、HTML、甚至是织梦的标签 如果选择了时效也可以控制标签的显示时间,这样便于统一对这些内容进行管理,非常方便。 完成添加后我们便得到相应的标签,例如我们自定义标签名为diyinfo,则我们的标签名称就为{dede:mytag name='diyinfo'},如果标签内为HTML或者纯文本内容可以设置ismake属性为no,如果加入了织梦的标签,则将ismake属性设置为yes。 第二种方法就是在系统\[模板\]-\[智能标记向导\]中生成一个标签,然后保存为自定义宏标记,保存的默认文件名为auto\_x(x代表数字,从1开始),这样获取他的标签代码为{dede:mytag name='auto\_1' ismake='yes'/}。 当然自定义宏标记不但但可以通过织梦标签的形式进行调用,还可以通过js的方式进行调用,在自定义标签管理页面,每个标签后面有一个对应的js生成向导,用户可以生成js代码插入到网站模板中。 **加入模板** 自定义宏标记可以任意加入到模板中的首页、频道页、列表页、内容页中,相对的模板文件路径在织梦帮助中心的《主要模板文件及功能说明》已经列出,修改时候可以参考加入。 **内容生成** 如果自定义宏标记使用的是织梦标签加入到模板中,需要定期对网站所有内容进行一次更新,但如果您在模板中使用了js代码,只需要生成一次就可以一直进行使用。 > 以下为引用的内容: > 说明:织梦标签和js是自定义标记的两种调用形式,前者比较适合网站定期进行全站更新,并且生成内容直接嵌套到生成页面中,后者比较适合网站少量更新,但更加方便管理。这里广告插件其实是自定义宏标记的一种扩展,调用形式有些相同。 至此,我们完成了自定义宏标记的学习,当然自定义宏标记还有很多方面的应用,期待更多的织梦用户进行发觉。