由于百度对MIP的支持使得MIP网页大受欢迎,众多站长纷纷把网页改造成MIP。作为国内主流的开源博客程序,zblog主题的mip改造需求也是庞大,因此zblog官方推出了MIP支持插件,通过该插件可以让网站即时拥有一个简单的子目录mip站点,同时也可以基于该插件开发zblog主题。
MIP主题类型
通过MIP支持插件可以开发普通的zblog主题和独立的zblog主题,普通主题即是依赖该插件的可以在后台主题管理自由切换的主题;独立主题则是启用插件后,默认会有/mip/
子目录并自带主题,可以通过http://域名/mip/
访问。
独立主题开发
启用MIP支持插件后,默认会有/mip/
这一子目录,内有自带主题。此处的主题与后台设置的主题无关,独立主题,即是设置此处的主题。
在后台新建一个插件后,创建template目录,在include.php文件插入以下代码(仅为示例,注意将应用ID换为自己的应用ID):
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() {} |
结构如图:
然后,您就可以像开发普通的主题一样开发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