发布数据到Zblog自定义字段教程

简数采集器支持向 Zblog 系统的自定义字段(包括插件、主题扩展字段等)发布数据。

实现此功能需修改插件代码,具体操作步骤如下:


1. 获取自定义字段参数名

Zblog系统自定义扩展字段参数,通常是存储在数据库zbp_post表的log_Meta参数里,其值的格式为序列化的字符串,比如:

a:3:{s:11:"singletitle";s:9:"111标题";s:14:"artkeywords";s:12:"222关键词";s:17:"artdescription";s:9:"333描述";}

示例中的 singletitle、artkeywords和artdescription为扩展的自定义字段参数名。


查找参数名小技巧:将扩展字段内容设置为易识别的独特值,或者可尝试从模板源码中获取。


2. 修改发布插件代码

自定义字段的参数名称各不相同,基本无法通用,需自行修改Zblog采集发布插件代码进行兼容。

修改方法如下:

1)打开发布插件文件:/zb_users/plugin/keydatas/keydatas_zblog.php;

2)注释掉原有的log_Meta赋值代码,在该行前面添加//即可注释:(约在127行)

//$log_Meta  = isset($_POST['log_Meta']) ? $_POST['log_Meta'] : '';

3)在注释代码下方添加以下代码片段,例如要发布的自定义字段参数名称为 artkeywords 和 artdescription:

//接收自定义字段数据标准写法,变量名称(如$artkeywords 和 $artdescription)可自由命名;
// 'artkeywords' 和 'artdescription' 替换为实际要使用的自定义字段参数名;
$artkeywords = isset($_POST['artkeywords']) ? $_POST['artkeywords'] : '';
$artdescription = isset($_POST['artdescription']) ? $_POST['artdescription'] : '';  

//注意替换掉下行代码中的 $artkeywords 变量,换成必填的扩展字段变量
//当必填字段不为空时,则组合所有扩展字段并做序列化处理
if (!empty($artkeywords)) {    
    $extraArr = [         "artkeywords" => $artkeywords,
        "artdescription" => $artdescription     ];
    $log_Meta = serialize($extraArr);
}


3. 发送目标配置扩展字段

在简数发送目标第三步扩展参数,添加自定义扩展字段的参数名,并且映射要发送的采集内容。

沿用前面修改代码的示例,填写的参数名为 artkeywords 和 artdescription 。