有时候发布文章后需要挨个去熊掌号去提交数据比较麻烦,闲暇时做了个dedecms熊掌号提交插件。也不需要过多的修改dedecms后台文件,上传到目录选择安装即可。
需要配置的是url提交地址,当日提交和历史提交地址。
需要把插件上传到/data/module/下解压即可。
然后开启安装这个插件
下载地址:
https://apizl6.ctfile.com/dir/18261410-29588324-a0cea5/
https://pan.baidu.com/s/14ER5ZgTiY1alAQxjD6KSlw 只保留最新的PHP更新文件
熊掌号插件.zip 安装完后需要更新最新PHP文件 (往下看文章)
由于导出插件原因需要自己手动替换dede目录或自定义后台目录下的xz_manage.php文件:
xz_manage下载:xz_manage.zip 2018-5-22更新
xz_manage下载:xz_manage.zip 2018-5-23 新增自定义URL规则提交 url规则只需要填写自己网站url就行
xz_manage下载:https://www.apizl.com/archives/view-134272-1.html 2018-7-10 新增分页功能,大伙的提交额度都涨了原有显示的数据列不够用了。
以后更新新功能只更新xz_manage.php文件
熊掌号dedecms模板改造:
<!--canonical--> <link rel="canonical" href="{dede:global.cfg_basehost/}{dede:geturl runphp='yes'}@me = GetCurUrl();{/dede:geturl}"/> <!--熊掌号--> <script src="//msite.baidu.com/sdk/c.js?appid=你的熊掌号id"></script> <script type="application/ld+json"> { "@context": "https://ziyuan.baidu.com/contexts/cambrian.jsonld", "@id": "{dede:global.cfg_basehost/}{dede:geturl runphp='yes'}@me = GetCurUrl();{/dede:geturl}", "appid": "你的熊掌号id", "title": "{dede:field.title/}", "images": [ {dede:field.litpic function='showXzhImages(@me)'/} ], "pubDate": "{dede:field.pubdate function="MyDate('Y-m-d',@me)"/}T{dede:field.pubdate function="MyDate('H:m:s',@me)"/}" } </script> showXzhImages为扩展熊掌号出图标准:300X200 扩展方法可以使用getimagesize 判断图片尺寸是否达到标准,否则就不输出。
如果遇到php版本过低5.3或5.3以下版本需要修改文件中 "[]"改成 "array()",如果还是不正常无法保存配置!那么就是安装插件时候没有成功创建表结构,需要自己在数据库重新创建!
表结构如下:
INSERT INTO `dede_plus` (`plusname`, `menustring`, `mainurl`, `writer`, `isshow`, `filelist`) VALUES ('熊掌号提交插件', '<m:item name="熊掌号提交插件" link="xz_manage.php" rank="plus_熊掌号提交插件" target="main" />', '', '爱资料', 1, NULL); DROP TABLE IF EXISTS `dede_xz_push`; CREATE TABLE `dede_xz_push` ( `id` int(11) NOT NULL AUTO_INCREMENT, `aid` int(11) DEFAULT NULL, `history` int(11) DEFAULT '0', `now` int(11) DEFAULT '0', `add_time` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='熊掌号提交表'; DROP TABLE IF EXISTS `dede_apizl_setting`; CREATE TABLE `dede_apizl_setting` ( `key` varchar(255) DEFAULT NULL, `value` text ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='配置表';
如果数据能成功保存在数据表中,但是无法成功读取配置信息,这个时候需要检查下表前缀是否自定义修改了,而非dede前缀。
这个时候就需要修改代码中如下
$nowRow = $dsql->GetOne("SELECT * FROM `dede_apizl_setting` WHERE `key`='xz_now_setting'"); $historyRow = $dsql->GetOne("SELECT * FROM `dede_apizl_setting` WHERE `key`='xz_history_setting'"); $urlRow = $dsql->GetOne("SELECT * FROM `dede_apizl_setting` WHERE `key`='xz_url_setting'"); $dsql->SetQuery("SELECT * FROM `dede_archives` order by id desc limit 0,50");
改为
$nowRow = $dsql->GetOne("SELECT * FROM `dede_apizl_setting` WHERE `key`='xz_now_setting'"); $historyRow = $dsql->GetOne("SELECT * FROM `dede_apizl_setting` WHERE `key`='xz_history_setting'"); $urlRow = $dsql->GetOne("SELECT * FROM `dede_apizl_setting` WHERE `key`='xz_url_setting'"); $dsql->SetQuery("SELECT * FROM `你的自定义前缀_archives` order by id desc limit 0,50");
如果是用手机域名或者其他域名进行推送需要进行修改! 2018-7-6 新增
xz_manage.zip 2018-5-23 使用最新php进行替换,找到197行
将global $cfg_basehost; 换成如下:$cfg_basehost ="手机域名"; 域名示例: https://www.apizl.com 结尾不带/