关键字描述:目录 文件 引用 模板 " < INCLUDE 内容 插入 动态
在Z-Blog中引用INCLUDE目录内文件共有两种方法
1.直接在模板内嵌入标签
由系统自动替换为文件内容。注意,这种方法只适合动态生成的页的模板如default.html,catalog.html,而如用在静态页模板如singel.html则只能在文件重建后更新。
A.根目录下的INCLUDE内文件引用
<#CACHE_INCLUDE_文件名(不要后缀且全大写)#>
这样的标签,例如:“<#CACHE_INCLUDE_CATALOG#>”,系统会自动读取INCLUDE目录内的catalog.asp并替换标签。
B.主题目录下的INCLUDE内文件引用
1.8新特性:主题也可以有自己的INCLUDE目录,如THEMESdefaultINCLUDE,使用
<#TEMPLATE_INCLUDE_文件名(不要后缀且全大写)#>
系统会自动引用当前主题下的INCLUDE内相应文件内容。
2.动态插入文件内容
采用c_html_js.asp动态插入文件内容,这种方法适合所有的模板如single.html,catalog.html。动态插入也有两种方式:
A.一个一个单独插入到模板里来,效率较低。
例如以下代码就把INCLUDE目录内的calendar.asp的内容动态的插入当前页面。
在你想要插入的元素的HTML标签内写入
<script src="<#ZC_BLOG_HOST#>function/c_html_js.asp?include=calendar" type="text/javascript"></script>
将<#ZC_BLOG_HOST#>替换成你的博客地址,即可在外部引用你博客上的列表内容了。
B.使用c_html_js.asp的act=batch指令批量的读入文件。
推荐在静态日志页面模板(singel.html)使用该读入方式读取include文件(如日历calendar.asp,最近文章previous.asp等)。
注:该方法也同样可用于读取主题目录下的include文件
Step 1.在模板顶部定义如下JS参数
<script type="text/javascript">
var strBatchView="";
var strBatchInculde="";
var strBatchCount="";
</script>
Step 2.在你想要插入的元素的HTML标签内写入
<ul id="ulComments">
<script type="text/javascript">strBatchInculde ="ulComments=comments,"</script>
</ul>
这段代码的用意是:把comments.asp(最新评论)的内容放入ID为”ulComments”的HTML元素内。你只要改”ulComments”和”comments”两个字符串为相应的HTML元素的ID和INCLUDE目录下的文件名(不要后缀)即可调用其中内容。
Step 3.在模板的最末端写入
<script language="JavaScript" type="text/javascript">
$(document).ready(function(){
try{
var elScript = document.createElement("script");
elScript.setAttribute("language", "JavaScript");
elScript.setAttribute("src", "<#ZC_BLOG_HOST#>function/c_html_js.asp?act=batch" unescape("&") "view=" escape(strBatchView) unescape("&") "inculde=" escape(strBatchInculde) unescape("&") "count=" escape(strBatchCount));
document.getElementsByTagName("body")[0].appendChild(elScript);
}
catch(e){};
});
</script>