兔源码网 - 专注DZ模版分享、DZ插件分享!

 找回密码
 立即注册

QQ登录

只需一步,快速开始

广告
温馨提示:本站所有DZ相关模板、插件、教程(包括DZ应用中心已下架插件、模板)皆为提供免费下载,无任何收费模式(不包括VIP版块非DZ资源,VIP版块需充值兔币购买会员组方可下载),用户仅需手动前往【申请下载权限】申请用户组下载权限即可,如本站没有您需要的插件或模板,请自行前往淘宝互站网送吗网等第三方站点搜索相关插件或模板进行低价格购买下载本站非常不建议用户浪费金钱前往DZ应用中心购买。

【未测试】Discuz!自动获取标签实现方法(转载)

[复制链接]
tuyuanma 发表于 2018-2-12 09:38:14 | 显示全部楼层 |阅读模式
温馨提醒:禁止内容附带广告图片、二维码图片,否则将在不通知情况下永久禁言账号!
欢迎加入兔源码站长交流群,您的加入是我们前行的动力!

DZ站长建站交流群:493651246

[ 温馨提示:点击上方群文字,可快速加入QQ群 ]


Discuz!自动获取标签实现方法(转载)9 k7 w5 B4 J& }+ s. |6 Z8 K6 a4 t" q

) Z! T; _. F1 dJava代码
  1. <?php  # H4 ?0 O0 L: }$ }
  2. //强制使用字符集  " r+ A6 \) l/ U4 R0 k/ a" b
  3. @header('Content-Type: text/html; charset=gbk');     
    - w) P9 f( t* Y
  4. $subjectenc ='用“超级站长”安装Discuz!和UCHome,超级简单!'; //这是标题     ( w4 L& N. M3 b. }/ U
  5. $messageenc = preg_replace("/\[.+?\]/U", '', '用“超级站长”安装Discuz!和UCHome,超级简单!'); //这是内容     8 {7 i' T5 l' b& G
  6. //关键部分,这里是将你网站的文章标题和内容发送到dz的标签库中去匹配,返回的是一个xml文档  : [  c7 P$ I/ m2 k" x. g' M" T+ Z
  7. $data = @implode('', file("http://keyword.discuz.com/related_kw.html?title=$subjectenc& content=$messageenc&ics=gbk&ocs=gbk"));   6 E5 i- _5 M; x" M5 u
  8. //把标题和内容发送到dz官方去找  $ A) _* f7 W2 R9 O: n. P" h9 z
  9. if ($data){  1 r! t$ g! w8 ~; h
  10.     //有数据返回  
    7 Y" ?# c1 A& \" `3 b: `
  11.     $parser = xml_parser_create(); //建立一个 XML 解析器  
    - e1 S# G9 f3 n1 X) W1 c
  12.     xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0);  
    $ l) t0 b# }# H% J) e, s5 I4 o  ~) f
  13.     xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1);  . D' d7 S" w& w- ~3 o* r0 Z) E
  14.     xml_parse_into_struct($parser, $data, $values, $index); //将 XML 数据解析到数组中  
    - E" q3 Z# z" G
  15.     xml_parser_free($parser);  
    3 y* {: ~, T9 M5 `1 k& y
  16.     $kws = array();  ) W) w( }9 [" t* ^$ p  j" n) A
  17.     foreach($values as $valuearray){  
    9 n$ B* ^# z3 ~
  18.         //循环单曲xml中的数据到数组$kws  ' r- Q/ z* x$ W7 N& i
  19.         if ($valuearray['tag'] == 'kw' || $valuearray['tag'] == 'ekw'){  
    4 {9 j6 t  n  i
  20.             $kws[] = iconv('utf-8','gbk',$valuearray['value']);//编码转换   
    ( H" _+ H- |9 t
  21.         }  " s5 K8 R3 c! q% G" F
  22.     }  
    0 v: t+ J8 o# g9 M3 @4 e( a! W# c  a
  23.   
    0 i1 A0 w9 w6 u) p7 X$ ~
  24.     //最后出来的是数组.  
    " m. X8 U! K6 h1 _
  25.     print_r($kws);   
    ! s% {1 Q8 i- q
  26.     $return = '';  8 `' _' a/ O2 k5 k  N
  27.     if ($kws){  
    0 ~0 {0 L7 X* m0 g) C5 o
  28.         foreach($kws as $kw){  + }% a. l$ e' F1 l- i' P: a) l
  29.             $return .= $kw.' '; //把获取到的标签用空格链接  
    & z) [0 }- A. e. z- u2 p9 h: S3 L5 u
  30.         }  * w! o  v0 s, |/ h4 e
  31.         $return = trim($return);  
    ; b* _, |# r& p5 ]5 q- N% q
  32.     }  5 \. h& w; R. \7 ^% d9 I
  33.     echo $return; //返回匹配到的标签  : S* ^8 g6 W% I+ ^0 J$ x9 U6 j3 u: ^
  34. }else{  
    / O" i4 D3 p* H. h5 j" u
  35.     echo' '; //没有匹配的标签  
    ; k: I+ z  Y3 i* L; r4 ^! q
  36. }  
    1 X* I( z( |* ~# m# ~
  37. ?>  
复制代码

版权声明
1、转摘或引用本站内容资源须注明原网址,并标明本站网址(兔源码www.tuyuanma.com);
2、对于转摘或引用本站内容资源而引起的民事纠纷、行政处罚或其他损失,本站不承担责任;
3、对于不遵守本声明或其他违法、恶意使用本站内容者,本站保留其追究法律责任的权利。




自动排版 | 高级模式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广告

兔源码网 ( 赣ICP备17001544号 公网安备36112102000036号 )

兔源码 QQ交流群:493651246  GMT+8, 2019-8-20 00:19
←站长统计工具 查看密码:tuyuanma

兔源码DZ模板下载 站长邮箱:tuyuanma@qq.com 站长QQ:3197813386 网站地图

© 2001-2013 本站内容皆来自互联网及用户分享,如需删除请提供软著或商标证书。

     
快速回复 返回顶部 返回列表