emlog模板制作文件说明帮助手册
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
emlog基本模板文件
必须文件:
main.css: CSS(样式表)文件
log_list.php: 日志列表页模板
echo_log.php: 日志页模板
page.php: 页面(page)模板
footer.php: Footer模板
header.php: Header模板
t.php: 碎语模板
module.php: 包含widgets、评论、引用、编辑等
可选文件:
side.php : 侧边栏模板
基本条件判断Tag
$curpage :当前页面表示,常用判断tag如下:
$curpage == CURPAGE_HOME:首页
$curpage == CURPAGE_TW:碎语页
$curpage == CURPAGE_LOG:日志、page页
ROLE:当前访问者身份
ROLE == 'admin' :管理员
ROLE == 'writer' :联合撰写人
ROLE == 'vistor' :未登录用户
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
|
模板PHP标签说明
通用:
<?php if (!defined( 'EMLOG_ROOT' )) { exit ( 'error!' );} ?>存在每个php文件头部,防止非法访问
<?php include getViews( 'XXXX' );; ?>: 调用当前模板目录下XXXX.php文件
<?php echo EMLOG_VERSION;?>:显示当前emlog版本
<?php echo TEMPLATE_URL; ?>: 显示模板文件路径
<?php echo BLOG_URL; ?>: 显示博客Url
<?php echo $blogtitle ; ?>: 显示博客标题(会根据当前页面变化)
<?php echo $blogname ; ?>: 显示博客名称
<?php echo $bloginfo ; ?>:显示博客描述
<?php echo $icp ; ?>:显示备案号
<?php endforeach ; ?>: 循环结束,需和<?php foreach (xxxx): ?>配对
<?php endif ;?>:结束 if 标签,需和<?php if (xxxx): ?>配对
header.php
<?php
/*
Template Name:模板名称
Description:模板描述
Author:模板作者
Author Url:作者主页
Sidebar Amount:侧边栏数目,最大4
*/
?>
模板注释,存在于header.php头部,可为空
<?php doAction( 'navbar' , '左标签' , '右标签' ); ?>:插件挂载点,用于导航栏,左右标签为html标签,用以控制样式,可为空
<?php if ( $istwitter == 'y' ):?>:如果后台设置前台可见碎语链接
<?php
foreach ( $navibar as $key => $val ):
if ( $val [ 'hide' ] == 'y' ){ continue ;}
if ( empty ( $val [ 'url' ])){ $val [ 'url' ] = BLOG_URL. '?post=' . $key ;}
?>:开始导航循环
footer.php
<?php doAction( 'index_footer' ); ?>:插件挂载点(用于统计代码等)
echo_log.php
<?php topflg( $top ); ?>:置顶标志,函数存在于module.php
<?php echo $log_title ; ?>:显示日志、page标题
<?php echo $log_content ; ?>:显示日志内容
<?php blog_sort( $sortid , $logid ); ?>:显示分类,该函数存在于module.php
<?php editflg( $logid , $author ); ?>:显示编辑链接,函数存在于module.php
<?php blog_author( $author ); ?>:显示日志作者,函数存在于module.php
<?php echo gmdate ( 'Y-n-j G:i l' , $date ); ?>:日志发表时间,格式是2010-12-11 19:05 30,格式可修改
<?php blog_att( $logid ); ?>:显示日志附件(图片附件不显示),函数存在于module.php
<?php blog_tag( $logid ); ?>:显示日志标签,函数存在于module.php
<?php doAction( 'log_related' ); ?>:插件挂载点(用于相关日志等)
<?php neighbor_log(); ?>:显示相邻日志,函数存在于module.php
<?php blog_trackback(); ?>:显示引用通告地址及引用,函数存在于module.php
<?php blog_comments(); ?>:显示日志评论,函数存在于module.php
<?php if ( $allow_remark == 'y' ){blog_comments_post();}?>:根据是否允许评论显示评论表单,函数存在于module.php
page.php
<?php echo $log_title ; ?>:显示日志、page标题
<?php echo $log_content ; ?>:显示日志内容
<?php blog_att( $logid ); ?>:显示附件(图片附件不显示),函数存在于module.php
<?php if ( $allow_remark == 'y' ){blog_comments();blog_comments_post();} ?>
:根据是否允许评论显示评论和评论表单,函数存在于module.php
log_list.php
<?php doAction( 'index_loglist_top' ); ?>:插件挂载点,存在于列表顶部(用于公告等)
<?php foreach ( $logs as $value ): ?>: 开始循环输出日志列表
---------------------------------以下仅存在于<?php foreach ( $logs as $value ): ?>和<?php endforeach ; ?>之间
<?php topflg( $value [ 'top' ]); ?>:置顶标志,函数存在于module.php
<?php echo $value [ 'log_title' ]; ?>:显示日志标题
<?php echo $value [ 'log_description' ]; ?>:显示日志摘要
<?php blog_sort( $value [ 'sortid' ], $value [ 'logid' ]); ?>:显示分类,该函数存在于module.php
<?php editflg( $value [ 'logid' ], $value [ 'author' ]); ?>:显示编辑链接,函数存在于module.php
<?php blog_author( $value [ 'author' ]); ?>:显示日志作者,函数存在于module.php
<?php echo gmdate ( 'Y-n-j G:i l' , $value [ 'date' ]); ?>:日志发表时间,格式是2010-12-11 19:05 30,格式可自行修改
<?php blog_att( $value [ 'logid' ]); ?>:显示日志附件(图片附件不显示),函数存在于module.php
<?php blog_tag( $value [ 'logid' ]); ?>:显示日志标签,函数存在于module.php
<?php echo $value [ 'comnum' ]; ?>:评论数
<?php echo $value [ 'tbcount' ]; ?>:引用数
<?php echo $value [ 'views' ]; ?>:浏览数
----------------------------------以上仅存在于<?php foreach ( $logs as $value ): ?>和<?php endforeach ; ?>之间
<?php echo $page_url ;?>:显示分页
side.php
<?php $widgets = ! empty ( $options_cache [ 'widgetsX' ]) ? unserialize( $options_cache [ 'widgetsX' ]) : array (); ?>
:该页面要加载的widgets,X为数字,不超过header.php里设置的侧边栏数目
<?php doAction( 'diff_side' ); ?>:插件挂载点
<?php
foreach ( $widgets as $val )
{
$widget_title = @unserialize( $options_cache [ 'widget_title' ]);
$custom_widget = @unserialize( $options_cache [ 'custom_widget' ]);
if ( strpos ( $val , 'custom_wg_' ) === 0)
{
$callback = 'widget_custom_text' ;
if (function_exists( $callback ))
{
call_user_func( $callback , htmlspecialchars( $custom_widget [ $val ][ 'title' ]), $custom_widget [ $val ][ 'content' ], $val );
}
} else {
$callback = 'widget_' . $val ;
if (function_exists( $callback ))
{
preg_match( "/^.*\s\((.*)\)/" , $widget_title [ $val ], $matchs );
$wgTitle = isset( $matchs [1]) ? $matchs [1] : $widget_title [ $val ];
call_user_func( $callback , htmlspecialchars( $wgTitle ));
}
}
}
?>:这一长串用于显示widgets
module.php(建议参考默认模板里的注释)
function widget_xxxx( $title ):显示widgets函数,如widget_blogger( $title )显示博主信息
t.php
<?php
foreach ( $tws as $val ):
$author = $user_cache [ $val [ 'author' ]][ 'name' ];
$avatar = empty ( $user_cache [ $val [ 'author' ]][ 'avatar' ]) ?
BLOG_URL . 'admin/views/' . ADMIN_TPL . '/images/avatar.jpg' :
BLOG_URL . $user_cache [ $val [ 'author' ]][ 'avatar' ];
$tid = (int) $val [ 'id' ];
?>:开始循环输出碎语
<?php echo $author ; ?>:显示碎语发布者
<?php echo $val [ 't' ];?>:显示碎语内容
<?php echo $pageurl ;?>:显示碎语分页
<?php echo $twnum ; ?>:显示碎语数目
|
CTRL+D快速收藏,欢迎常来喔