当前位置:蚂蚁分类目录 » 站长资讯 » 站长运营 » zblog教程 » 文章详细 订阅RssFeed

zblog MIP主题官方开发指南 zblog主题开发

来源:博客吧 浏览:670次 时间:2021-05-18 18:57:44

由于百度对MIP的支持使得MIP网页大受欢迎,众多站长纷纷把网页改造成MIP。作为国内主流的开源博客程序,zblog主题的mip改造需求也是庞大,因此zblog官方推出了MIP支持插件,通过该插件可以让网站即时拥有一个简单的子目录mip站点,同时也可以基于该插件开发zblog主题。

MIP主题类型

通过MIP支持插件可以开发普通的zblog主题和独立的zblog主题,普通主题即是依赖该插件的可以在后台主题管理自由切换的主题;独立主题则是启用插件后,默认会有/mip/子目录并自带主题,可以通过http://域名/mip/访问。

独立主题开发

启用MIP支持插件后,默认会有/mip/这一子目录,内有自带主题。此处的主题与后台设置的主题无关,独立主题,即是设置此处的主题。

在后台新建一个插件后,创建template目录,在include.php文件插入以下代码(仅为示例,注意将应用ID换为自己的应用ID):

Plugin("应用ID","ActivePlugin_应用ID");   
function ActivePlugin_应用ID() { Add_Filter_Plugin('Filter_Plugin_MIP_Template',
 '应用ID_MIP_Template'); }   
function 应用ID_MIP_Template(&$template) 
{ $files = GetFilesInDir(dirname(__FILE__) . '/template', 'php'); 
foreach ($files as $sortname => $fullname) 
{ $template->templates[$sortname] = file_get_contents($fullname); } }   
function InstallPlugin_应用ID() {} function UninstallPlugin_应用ID() {}

结构如图:

然后,您就可以像开发普通的主题一样开发MIP主题了。示例见:https://app.zblogcn.com/mip/

通用开发指南(普通主题)

主题首先必须依赖MIP支持插件,要在主题内启用MIP,按照以下方法操作:

1、在主题内部的ActivePlugin_主题ID函数,插入代码:

1
mip_active();

2、在主题内部的header.php,插入代码:

1
<meta name="bloghost" content="{$host}">

3、如果主题没有<style mip-custom>,则在header.php插入

1
<style mip-custom>{$mipstyle}</style>

如果有<style mip-custom>,则请把{$mipstyle}插入到</style>之前。

4、此时,您可以使用MIP插件提供的功能了。

扩展

评论

1、将主题内的{template:comments}替换成

1
<mip-zblogphp-comment post-id="{$article.ID}"></mip-zblogphp-comment>

2、在主题的footer.php文件插入代码

1
<script src="https://c.mipcdn.com/static/v1/mip-zblogphp-comment/mip-zblogphp-comment.js"></script>

3、(可选)将mip插件内的components/comment/mip-comment.php复制到自己的主题内部,进行开发。

访问量

1、将文章列表的{$article.ViewNums}换成

1
<mip-zblogphp-article-viewnum post-id="{$article.ID}" default="{$article.ViewNums}" update="0" >
</mip-zblogphp-article-viewnum>

2、将文章页的{$article.ViewNums}换成

1
<mip-zblogphp-article-viewnum post-id="{$article.ID}" default="{$article.ViewNums}" update="1">
</mip-zblogphp-article-viewnum>

3、在主题的footer.php文件插入

1
<script src="https://c.mipcdn.com/static/v1/mip-zblogphp-article-viewnum/mip-zblogphp-article-viewnum.js">
</script>

以上代码来自zblog wiki:https://wiki.zblogcn.com/doku.php?id=zblogphp:development:plugins:mip

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php #注册插件 RegisterPlugin("应用ID","ActivePlugin_应用ID");   function ActivePlugin_应用ID() { Add_Filter_Plugin('Filter_Plugin_MIP_Template', '应用ID_MIP_Template'); }   function 应用ID_MIP_Template(&$template) { $files = GetFilesInDir(dirname(__FILE__) . '/template', 'php'); foreach ($files as $sortname => $fullname) { $template->templates[$sortname] = file_get_contents($fullname); } }   function InstallPlugin_应用ID() {} function UninstallPlugin_应用ID() {}