CMS-织梦[dede]-通用免登发布插件

CMS-织梦[dede]-通用免登发布插件

  • [1. 织梦通用免登陆发布插件功能说明](#1. 织梦通用免登陆发布插件功能说明)
  • [2. 织梦通用免登陆发布接口使用说明](#2. 织梦通用免登陆发布接口使用说明)
    • [2-1 下载插件](#2-1 下载插件)
    • [2-2 安装插件](#2-2 安装插件)
    • [3 对接火车头等采集工具](#3 对接火车头等采集工具)
  • [3 爬虫【古诗文网】示例[可选]](#3 爬虫【古诗文网】示例[可选])

使用火车头,简数采集器,八爪鱼等文章采集工具,采集的数据要怎么发布到自己的织梦CMS网站呢?可用对应的发布插件接口来接收数据,然后处理接收的数据写入网站。

织梦(DedeCMS)通用免登陆文章发布插件(PHP版)支持对接大部分采集工具(火车头,简数等都可以),只要填写对应参数,就可以轻松批量发布到自己的织梦Dede cms网站。

网络上此类功能比较常见, 亲测后发现存在各种问题, 比如不支持扩展字段,确实建表语句等各种原因,导致插件使用不变。

1. 织梦通用免登陆发布插件功能说明

I、免登陆使用方便简单;

II、安全:发布时支持密码验证功能,大大增加安全性;

III、可指定发布分类栏目;

IV、免重复发布机制:相同标题文章不重复发布;

V、插件基于织梦dede5.7-SP2版本开发,暂时只支持文章已经基于文章的扩展模型模型;

VI、插件是开源的,可以自行增加对应新功能;

2. 织梦通用免登陆发布接口使用说明

2-1 下载插件

链接:https://pan.baidu.com/s/13zlaKOkCbvXFMqYRHAHing?pwd=omdy

提取码:omdy

2-2 安装插件

I、下载插件后,选择网站对应的字符编码(UTF_8或GBK)安装包,解压出对应的xml文件。

II、然后进入织梦后台,左侧菜单点击 [模块] ,然后在模块管理下点击 [上传新模块] 选项,选择对应字符编码的xml文件,点击 [确定] 按钮,然后跟着安装指引一步步安装即可。

关键表结构初始化语句:

注意: 此表若安装模块后未成功创建,可以手动操作。其中默认表前缀为"dede_",基于安装环境变更。 若表不存在, 则无法保存免登密码

复制代码
-- ----------------------------
DROP TABLE IF EXISTS `dede_articlepost_config`;
CREATE TABLE `dede_articlepost_config`  (
  `id` int NOT NULL AUTO_INCREMENT,
  `meta_key` varchar(255) CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT NULL,
  `meta_value` varchar(255) CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = latin1 COLLATE = latin1_swedish_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of dede_articlepost_config
-- ----------------------------
INSERT INTO `dede_articlepost_config` (`id`, `meta_key`, `meta_value`) VALUES ('1', 'password', '123456');
INSERT INTO `dede_articlepost_config` (`id`, `meta_key`, `meta_value`) VALUES ('2', 'titleUnique', '1');
SET FOREIGN_KEY_CHECKS = 1;

III、安装成功后,在左侧菜单 [模块] 下可以看到 [免登陆发布配置] 选项,进入修改默认密码,重复发布机制也是在此处设置的:相同标题文章不重复插入,勾上即生效;

IV、特别要注意的:如果你网站的PHP版本是7及以上的,请在安装插件前修改一处代码,否则会安装失败无法使用的:

复制代码
    在你网站找到该文件/include/dedeatt.class.php,然后修改此处代码,约在23行左右

//约在23行左右
var $Items = ""; 
//修改成以下代码
var $Items = array();

二开模块插件,在/data/module/标识号.xml文件,把这个文件发送给别人安装即可。

3 对接火车头等采集工具

I、在采集工具创建对接的模块或目标,填写发布的地址:

复制代码
http://www.域名.com/articlePost/index.php?__post_flag=post

II、填写要发布的参数名称及映射哪些内容,这里列出常用的几个参数:

复制代码
 __post_password[标签:免登密码]//发布密码,对应先在接口文件里设置的密码。[建议必填]
 title[标签:标题]//标题。[必填]
 body[标签:内容]//内容。[必填]
 typeid[分类ID]//文章栏目(  。[必填]
 channel[标签:频道id]//频道模型,暂时只支持文章模型,一般是填写数字1。[必填]
 writer[标签:发布人]//DEDE发布用户登录名。[必填]
 pubdate[标签:发布时间]//发布时间。[可选]
 username[标签:管理员]//系统登录用户

举例

火车头插件导入成功后:

检查发布结果

最后就可以将采集的数据,批量自动发布到网站了。

3 爬虫【古诗文网】示例[可选]

复制代码
 __post_password[标签:免登密码]
 title[标签:标题]
 body[标签:内容]
 typeid[分类ID]
 channel[标签:频道id]
 writer[标签:发布人]
 pubdate[标签:发布时间]
 username[标签:管理员]
 yiwen[标签:译文]
 zhushi[标签:注释]
 jianshang[标签:鉴赏]
 year[标签:朝代]
 author[标签:作者]
 shangxi[标签:赏析]
 chuangzuobeijing[标签:创作背景]
 source_url[标签:来源url]

测试火车头入库模型

使用基本文章模型检测入库结果

复制代码
$userinfo=admin{"rs":0,"code":1405,"data":"save to addtable error","msg":"%E6%8A%8A%E6%95%B0%E6%8D%AE%E4%BF%9D%E5%AD%98%E5%88%B0%E6%95%B0%E6%8D%AE%E5%BA%93%E9%99%84%E5%8A%A0%E8%A1%A8%E6%97%B6%E5%87%BA%E9%94%99%EF%BC%81"}
  1. 新建内容模型

关键信息都要填写

字段管理也要填写

模型附加表, 建表语句

复制代码
CREATE TABLE `dede_addonarticle_poem`  (
  `aid` mediumint UNSIGNED NOT NULL DEFAULT 0,
  `typeid` smallint UNSIGNED NOT NULL DEFAULT 0,
  `body` mediumtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
  `redirecturl` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '',
  `templet` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '',
  `userip` char(15) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '',
  `yiwen` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '译文',
  `zhushi` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '注释',
  `jianshang` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '鉴赏',
  `chaodai` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '朝代',
  `author` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '作者',
  `shangxi` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '赏析',
  `chuangzuobeijing` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '创作背景',
  `source_url` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '来源url',
  PRIMARY KEY (`aid`) USING BTREE,
  INDEX `typeid`(`typeid`) USING BTREE
) ENGINE = MyISAM CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

SET FOREIGN_KEY_CHECKS = 1;
相关推荐
BingoGo2 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php
JaguarJack2 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php·服务端
BingoGo3 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php
JaguarJack3 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php·服务端
JaguarJack4 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
后端·php·服务端
BingoGo4 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
php
JaguarJack5 天前
告别 Laravel 缓慢的 Blade!Livewire Blaze 来了,为你的 Laravel 性能提速
后端·php·laravel
郑州光合科技余经理5 天前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
QQ5110082855 天前
python+springboot+django/flask的校园资料分享系统
spring boot·python·django·flask·node.js·php
WeiXin_DZbishe5 天前
基于django在线音乐数据采集的设计与实现-计算机毕设 附源码 22647
javascript·spring boot·mysql·django·node.js·php·html5