首页/网站源码/ emlog模板开发制作手册及挂载点

emlog模板开发制作手册及挂载点

作者:神奇   分类:网站源码   时间:2018-04-21 18:25:34  标签:


emlog的模板位于content\templates\文件夹下,安装只需解压上传到该目录,然后在管理后台选择该模板即可更换模板。
  emlog的模板一般包括如下文件:
images文件夹:存放模板所需图片。
echo_log.php:显示日志内容。(下面图中标7的部分)
footer.php:页面底部。(下面图中标4的部分)
header.php:页面头部。(下面图中标1的部分)
log_list.php:显示日志列表内容。(下面图中标3的部分)
main.css:模板的css文件。
module.php:模板公共代码,包含侧边widgets、评论、引用、编辑等。
page.php:自定义的页面内容的模板。(下面图中标6的部分)
preview.jpg:在后台模板选择界面显示的模板预览图,300X225jpg格式。
side.php:模板侧边栏文件,如制作单栏模板则该文件不是必须的。(下面图中标2的部分)
t.php:显示emlog系统自带的微博(碎语)内容。

 

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':未登录用户

模板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; ?>:显示碎语数目

---

 

 

挂载点:doAction('adm_main_top')
所在文件:admin/views/default/header.php
描述:后台红线区域扩展 

挂载点:doAction('adm_head')
所在文件:admin/views/default/header.php
描述:后台头部扩展:可以用于增加后台css样式、加载js等

挂载点:doAction('adm_siderbar_ext')
所在文件:admin/views/default/header.php
描述:后台侧边栏 功能扩展 子菜单扩展,用于插件单独页面。

挂载点:doAction('save_log', $blogid)
所在文件:admin/save_log.php
描述:新增日志、修改日志扩展点

挂载点:doAction('del_log', $key)
所在文件:admin/admin_log.php
描述:删除日志操作扩展点 

挂载点:doAction('adm_writelog_head', $key)
所在文件:
admin/add_log.phpadmin/add_page.phpadmin/edit_log.php
admin/edit_page.php
描述:可以再红框处显示扩展内容,如插入网络相册照片的插件。

挂载点:doAction('comment_post')
所在文件:./index.php 
描述:发表评论扩展点(写入评论前)。可用于垃圾评论防范 

挂载点:doAction('comment_saved’)
所在文件:include/model/comment_model.php 
描述:发表评论扩展点(写入评论后)。用于发布评论成功的后续操作,如发通知邮件

挂载点:doAction('log_related',$logData) 
所在文件:content/templates/default/echo_log.php
描述:阅读日志页面扩展点、用于增加日志相关内容 

挂载点:doAction('navbar', '<li>', '</li>') 
所在文件:content/templates/default/header.php
描述:用于扩展导航条。例如相册插件会利用这个
挂载点生成一个相册的导航链接

挂载点:doAction('index_head') 
所在文件:Content/templates/default/header.php
描述:前台头部扩展:可以用于增加前台css样式、加载js等

挂载点:doAction('index_footer') 
所在文件:content/templates/default/footer.php
描述:首页底部扩展点 

挂载点:doAction('comment_reply', $commentId, $reply)
所在文件:admin/comment.php
描述:回复评论扩展点

挂载点:doAction('data_prebakup')
所在文件:admin/data.php
描述:扩展备份数据库页面,可以对插件增加的表进行备份

挂载点:doAction('rss_display')
所在文件:rss.php
描述:Rss输出扩展

挂载点:doAction('attach_upload')
所在文件:include/lib/function.base.php
描述:扩展附件上传,如增加图片水印效果等

挂载点:doAction('url_rewrite')
所在文件:include/lib/function.base.php
描述:扩展url重写,可以自定义其他url优化方案

挂载点:doAction('adm_comment_display')
所在文件:admin/views/comment.php
后台评论显示扩展,可以用于查询评论人ip所在地域

挂载点:doAction('index_loglist_top')
所在文件:content/templates/default/log_list.php
描述:日志列表顶部扩展点,如显示公告等

挂载点:doAction('diff_side')
所在文件:content/templates/default/side.php
描述:侧边栏控制扩展点

挂载点:doAction('reply_twitter', $r, $name, $date, $tid)
所在文件:t/index.php
描述:回复碎语扩展点,用于回复邮件提醒等

挂载点:doAction('post_twitter', $t)
所在文件:
/m/index.php
/admin/twitter.php
描述:发布碎语扩展点,用于碎语和其他微博类产品同步等

 

温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!

评论:

发表评论:

code