君语贤
时光静好,与君语;细水流年,与君同;繁华落尽,与君老...

织梦开发>功能优化>正文

dede文章列表页接入熊掌号API推送方法

2019-01-24 12:17 君语贤

一、打开dede/templets/index_body.htm文件(dede为你网站后台登录目录,如有变动,自行修改),在104行左右加入代码:


<divclass="icoitem""background:url(images/manage1.gif) 10px 3px no-repeat;"><a href="content_listxzh.php">熊掌号管理</a></div>


dede文章列表页接入熊掌号API推送方法

添加后的代码

添加完成后,到网站后台刷新一下,在后台主面板的快捷管理处可以看到多了“熊掌号管理”入口:

dede文章列表页接入熊掌号API推送方法

二、找到dede/content_list.php文件,复制一份命名为content_listxzh.php,打开命名后的文件,找到代码(大概在第231行):


//模板


if(empty($s_tmplets)) $s_tmplets ='templets/content_list.htm';


$dlist->SetTemplate(DEDEADMIN.'/'.$s_tmplets);


修改为:


//模板


if(empty($s_tmplets)) $s_tmplets ='templets/content_listxzh.htm';


$dlist->SetTemplate(DEDEADMIN.'/'.$s_tmplets);


就是把模板指向文件content_list.htm改为content_listxzh.htm:

dede文章列表页接入熊掌号API推送方法

三、找到dede/ templets/ content_list.htm文件,复制一份命名为content_listxzh.htm,打开命名后的文件,找到代码(大概在第103行):


<a href="javascript:;"onClick="cAtts('attsDel',event,this)"class="coolbg">&nbsp;删除属性&nbsp;</a>


修改为:


<a href="javascript:;"onClick="cAtts('attsDel',this)"class="coolbg">&nbsp;删除属性&nbsp;</a>


<a href="javascript:xzh(0)"class="coolbg">&nbsp;百度熊掌号更新&nbsp;</a>


dede文章列表页接入熊掌号API推送方法

修改后的代码

此处是在文章列表页下方增加百度熊掌号推送按钮:

四、打开dede/js/list.js文件,在最后或者中间加入代码:


//百度熊掌号推送


function xzh(aid){


var qstr=getCheckboxItem();


if(aid==0) aid = getOneItem();


location="archives_do.php?qstr="+qstr+"&aid="+aid+"&dopost=xzh";


}


dede文章列表页接入熊掌号API推送方法

添加后的代码

然后再找到代码(大概在第87行):


newContextItem("删除文档",function(){ delArc(aid); }),


修改为:


newContextItem("删除文档",


newContextItem("熊掌号更新",function(){ xzh(aid); }),


dede文章列表页接入熊掌号API推送方法

添加后的代码

五、打开dede/archives_do.php文件,找到代码(大概在第267行):


/*--------------------------


//熊掌号更新


function xzh() { }


---------------------------*/


else if($dopost=="xzh")


{


CheckPurview('a_Check,a_AccCheck,sys_ArcBatch');


require_once(DEDEADMIN."/inc/inc_archives_functions.php");


if( !empty($aid) && empty($qstr) ) $qstr = $aid;


if($qstr=='')


{


ShowMsg("参数无效!",$ENV_GOBACK_URL);


exit();


}


$arcids = preg_replace("#[^0-9,]#",'',preg_replace("#`#",',$qstr));


$query ="Select arc.id,arc.title,arc.shorttitle,arc.typeid,arc.ismake,arc.senddate,arc.arcrank,arc.money,arc.filename,arc.litpic,


t.typedir,t.typename,t.namerule,t.namerule2,t.ispart,t.moresite,t.siteurl,t.sitepath,t.isdefault,t.defaultname


from `dede_archives` arc left join dede_arctype t on arc.typeid=t.id


WHERE arc.id in($arcids)";


$dsql->SetQuery($query);


$dsql->Execute();


$data=array();


while($row = $dsql->GetArray())


{


$preRow=$row;


$data[]=GetFileUrl($preRow['id'],$preRow['typeid'],$preRow['title'],


$preRow['ismake'],$preRow['namerule'],$preRow['typedir'],$preRow['money'],$preRow['filename'],


$preRow['moresite'],$preRow['siteurl'],$preRow['sitepath']);


}


$urls=$data;


$api ='http://data.zz.baidu.com/urls?appid=你的熊掌号id&token=你的Token码&type=batch';


$ch = curl_init();


$options = array(


CURLOPT_URL => $api,


CURLOPT_POST =>true,


CURLOPT_RETURNTRANSFER =>true,


CURLOPT_POSTFIELDS => implode(" ",$urls),


CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),


);


curl_setopt_array($ch,$options);


$result = curl_exec($ch);


echo $result;


ShowMsg($result,$ENV_GOBACK_URL);


exit();


}


注意一定要把百度熊掌号的ID和Token码换为自己的:

dede文章列表页接入熊掌号API推送方法

最后可以测试一下推送结果,显示成功success则代表此功能已经实现:

dede文章列表页接入熊掌号API推送方法

推送成功反馈

以上过程就是把百度熊掌号API接口集成到织梦后台的文章管理列表的实现方法,其他任何API接口都可以按照这个思路操作。

本文链接:https://www.weguiding.com/gnyh/340.html

图文推荐
热门标签
dede织梦自定义表单文章调用页面修改模板tag代码