Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[已解决] SupeSite7.5 所有的文章自动生成TAG

[复制链接]
casey 发表于 2010-6-11 14:35:36 | 显示全部楼层 |阅读模式
本帖最后由 casey 于 2010-6-11 15:06 编辑

ss7.5 采集的文章没有tag,文章想要使用内链接都不行,网上找了都无。

只好自己动手试试。



最终效果

http://www.king-leather.com/viewnews-22645.html


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

1

查看全部评分

 楼主| casey 发表于 2010-6-11 14:36:38 | 显示全部楼层
本帖最后由 casey 于 2010-6-11 14:47 编辑

先解释下思路

1、把文章列表出来

2、列表时调用listgettag('"'.$listvalue['subject'].'"')获取标题tag

3、通过javascript 设置 setTimeout 把列表tag内容提交

4、提交每个文章内容时处理tag,生成relativetags、includetags字段内容

5、把relativetags、includetags字段内容提交到数据库

6、跳转到下一个列表页。

7、重复上面的操作。

希望能帮到你。

http://www.king-leather.com/viewnews-22645.html
回复

使用道具 举报

 楼主| casey 发表于 2010-6-11 14:52:21 | 显示全部楼层
本帖最后由 casey 于 2010-6-11 14:56 编辑

1、修改文件admincp.php  106行

修改
  1. array('items', 'comments', 'attachments', 'tags', 'reports', 'reportmanage'),
复制代码
  1. array('items', 'comments', 'attachments', 'tags','gettag', 'reports', 'reportmanage'),
复制代码
2、修改文件batch.common.php 271行
增加内容
  1. elseif($action == 'relatetag') {
  2.        
  3.         $subjectenc = rawurlencode(strip_tags($_GET['subjectenc']));
  4.         $messageenc = rawurlencode(strip_tags($_GET['messageenc']));
  5.         $return = '';
  6.         $data = @implode('', file("http://search.qihoo.com/sint/related_kw.html?title=$subjectenc&content=$messageenc&ics=$charset&ocs=$charset"));
  7.         if($data) {
  8.                 $parser = xml_parser_create();
  9.                 xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0);
  10.                 xml_parser_set_option($parser, XML_OPTION_SKIP_WHITE, 1);
  11.                 xml_parse_into_struct($parser, $data, $values, $index);
  12.                 xml_parser_free($parser);
  13.        
  14.                 $kws = array();
  15.        
  16.                 foreach($values as $valuearray) {
  17.                         if($valuearray['tag'] == 'kw' || $valuearray['tag'] == 'ekw') {
  18.                                 if(PHP_VERSION > '5' && $charset != 'utf-8') {
  19.                                         $valuearray['value'] = encodeconvert("UTF-8", $valuearray['value']);
  20.                                 } else {
  21.                                         $valuearray['value'] = trim($valuearray['value']);
  22.                                 }
  23.                                 $kws[] = $valuearray['value'];
  24.                         }
  25.                 }

  26.                 if($kws) {
  27.                         foreach($kws as $kw) {
  28.                                 $kw = htmlspecialchars($kw);
  29.                                 $return .= $kw.' ';
  30.                         }
  31.                         $return = htmlspecialchars($return);
  32.                 }
  33.        
  34.         }
  35.         echo $return;
  36. }
复制代码
3、上传gettag.php到admin目录


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

thinkfor 发表于 2010-6-11 17:22:08 | 显示全部楼层
这个功能不错。。
有兄弟试过没有?
回复

使用道具 举报

cpublic 发表于 2010-6-11 19:00:13 | 显示全部楼层
看着好麻烦呀!不过,还是支持一下!
回复

使用道具 举报

 楼主| casey 发表于 2010-6-11 19:08:13 | 显示全部楼层
看着好麻烦呀!不过,还是支持一下!
cpublic 发表于 2010-6-11 19:00



呵呵,没试过怎么知道麻烦呢?

事实可以证明一切

只要把压缩包里的文件上传到网站上,登录后台运行http://www.你的网址.com/admincp.php?action=gettag

剩下的交给电脑自动操作就行了。

回复

使用道具 举报

saleroad 发表于 2010-6-11 19:34:41 | 显示全部楼层
先保存,以后说不定会用的。
回复

使用道具 举报

zmywsw 发表于 2010-6-11 19:59:52 | 显示全部楼层
保存下巴~~
回复

使用道具 举报

 楼主| casey 发表于 2010-6-13 00:49:45 | 显示全部楼层
看到这么少的回复,很奇怪,这个功能真的没什么作用吗?

回复

使用道具 举报

cpublic 发表于 2010-6-13 01:51:29 | 显示全部楼层
呵呵,有用,但效果太慢了,你的演示链接打开的网页,我没有看到效果在哪里呀?能不能详细说一下!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-6-16 16:18 , Processed in 0.113287 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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