banner

ZBlogPHP自定义域讲解——进阶篇

关于zbp的自定义域(Metas),我之前有写过官方插件的使用说明。

ZBlogPHP自定义域讲解——基础篇

现在,我继续讲解直接通过接口操作自定义域的方法。

第一步,你使用的主题或插件目录下要有include.php文件,如果没有,请先自建一个。

下面以默认主题为例

<?php
// 注册插件
RegisterPlugin("default","ActivePlugin_default");
// 挂接口
function ActivePlugin_default() {
    Add_Filter_Plugin('Filter_Plugin_Edit_Response','default_Article_Edit_Respons'); // 文章编辑页1号接口
}
function InstallPlugin_default(){
}
function UninstallPlugin_default(){
}
?>

在include中,要插入接口。

其实这个接口并非Metas专属内容,接入该接口,是为了在后台编辑文章等内容时,有一个操作对应Metas的区域。

比如,下面的代码就是在文章编辑页面显示一个Metas操作区。

<?php
// 注册插件
RegisterPlugin("default","ActivePlugin_default");
// 挂接口
function ActivePlugin_default() {
    Add_Filter_Plugin('Filter_Plugin_Edit_Response','default_Article_Edit_Respons'); // 文章编辑页1号接口
}
// 接入文章编辑页的1号接口
function default_Article_Edit_Respons() {
    global $zbp,$article;
	default_Article_CustomMeta_Response($article);
}
// 文章编辑页1号接口需要展示的内容
function default_Article_CustomMeta_Response(&$object) {
    global $zbp;
    echo '<div><label for="default_diy">自定义输出</label><input id="default_diy" name="meta_default_diy" value="'.htmlspecialchars($object->Metas->default_diy).'" /></div>';
    echo '可以直接输出内容的';
}
function InstallPlugin_default(){
}
function UninstallPlugin_default(){
}

?>

一定要注意的是,我们需要通过输入框或选择框的name值去控制Metas,比如上面代码中的input输入框,name值为“meta_”开头,后面连接的是要设置的名称,如本次设置“default_diy”。

如果你想要出现一些提示,直接echo就行了。一般要做这种操作,你需要基础的HTML/CSS+PHP,才能正常的输出。

注意,我们在使用Metas注意添加一个id前缀,避免出现名称重复,导致内容污染的情况。比如,我们所用的default_diy。

至于Metas的输出,请参考基础篇的使用方法了,比如我们直接在页面中使用{$article.Metas.default_diy},就能输出default_diy的内容了。

这个是文章编辑页的插入,如果是分类、Tags、会员页面要插入,只需要在对应的接口上输出就可以了。

阅读: 9649
在同意共创许可协议(CC BY-NC-SA-4.0)的前提下,您可以转载本文。
橙色阳光
https://oss.so/article/64

相关阅读

留言评论

3条留言
咨客
这个给力,很清晰撒
大谋
很详细!!给999个赞
小小鸟
阳光大神,这篇文章非常实用,666个赞!感谢分享!