ahao303 | 发表于:10-09-10 11:24 [添加收藏] 楼主 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() ![]() |
关键字带空格默认变成两个关键字,比方说King CMS 会变成 King,CMS 目前我解决办法是在模型那新建一个字段,不过关键字不会自动添加,要手动
还有META关键字碰到英文文章,空格都没有掉了 因做英文站比较多,故建议,把空格替换"," 给取消了,
Ta最近还发表过
[疑问]
偶然发现KingCMS 企业版 php7环境问题
(18-11-15)
[疑问]
php 企业版的有没有判断 是否存在子栏目的语句
(17-09-18)
[疑问]
四个一轮回怎么写标签
(17-02-11)
[疑问]
关于<?php switch
(16-06-02)
[疑问]
有没有判断当前文章的判断语句类似判断当前栏目
(16-05-15)
随机阅读
[其他]
冷冷清清的KC!
(16-05-31)
[使用]
新做的网站,做完了才搞清楚标签这些
(13-08-06)
[疑问]
请问点击数为何永远是1,不会增加?
(12-04-20)
[其他]
国家超级计算深圳中心正式启用 市民云生活由此开户
(11-11-17)
[其他]
讨论一下老大开发PHP用什么IDE?
(11-09-26)
|
pktsandy | 发表于:10-09-10 17:15 沙发 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
哪你去改源码好了
|
ahao303 | 发表于:10-09-20 23:50 板凳 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() ![]() |
搜索的带空格的代码有办法改,关键字的,那段代码我死活找不到。
|
SinCS | 发表于:10-09-20 23:52 4楼 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() |
估计是正则表达式,找找正则代码,相关的调用函数估计是preg_replace。
|
史册 | 发表于:10-09-21 09:52 5楼 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() |
灰太狼。。。
|
tiaobaowang | 发表于:10-10-09 22:41 6楼 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() |
改下源码,如果你是高手
|
lynnyjh | 发表于:10-10-11 10:26 7楼 [回复] #Top# |
---|---|
![]() ![]() |
高手真多
|
ahao303 | 发表于:10-11-30 10:30 编辑于:11-30 10:32 8楼 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() ![]() |
估计在这个里面找,不过怎么改我还不清楚
portal/core.class.php /** 从关键字列表中返回所包含的关键字 或 补充&更新系统关键字组 @param string $key 已有的关键字,如果有值,则读取系统关键字组进行更新 @param string $str 如果$key为空值,则根据$str返回关键字 */ public function getKey($str,$key=''){ global $king; $keywords=$king->config('keywords','portal'); if(isset($key{0})){//若有关键字列表,则进行更新操作 $key_array=preg_split("/[s,]+/",$key); if(isset($keywords{0})){//更新关键字组,并返回$key $keywords_array=explode('|',$keywords); foreach($key_array as $val){ $keywords_array[]=$val; } $new_array=array_unique($keywords_array);//删除重复值 $new_array=array_diff($new_array,array(''));//删掉空格 $s=implode('|',$new_array); $king->db->update('%s_system',array('kvalue'=>$s),'kname='keywords''); }else{//更新关键字组 $s=implode('|',$key_array); // $s=str_replace(',','|',$key); $king->db->update('%s_system',array('kvalue'=>$s),'kname='keywords''); } $king->cache->del('system/config/portal'); return implode(',',$key_array); }else{ if(isset($keywords{0})){ $array=explode('|',$keywords); $arr=array(); foreach($array as $val){ $num=stripos($str,$val); if(kc_validate($num,2)) $arr[]=$val; } array_unique($arr);//删除重复值 $arr=array_diff($arr,array(null));//去掉空值 return implode(',',$arr);//输出内容 } } } /** 返回Tag列表 或 添加Tag到列表中 @param string $key 已有的Tag,如果有值,则对%s_tag进行更新 @param string $str 如果$key为空,则根据$str来获得Tag */ public function getTag($str,$key=''){ global $king; if($key!=''){//若有关键字列表,则进行更新操作 $array_key=preg_split("/[s,]+/",$key); foreach($array_key as $val){ if(!$_res=$king->db->getRows_one("select kid from %s_tag where ktag='".$king->db->escape($val)."'")){ $array=array( 'ktag'=>$val, 'kcolor'=>'#000000', 'ktemplate1'=>$king->config('templatepath')."/".$king->config('templatedefault'), 'ktemplate2'=>$king->config('templatepath')."/inside/tag/".$king->config('templatedefault'),//template/inside/tag/default.htm 'norder'=>$king->db->neworder('%s_tag'), ); $king->db->insert('%s_tag',$array); }; } return implode(',',$array_key); }else{ if(!$res=$king->db->getRows("select ktag from %s_tag limit 200;")) $res=array(); $arr=array(); foreach($res as $rs){ $num=stripos($str,$rs['ktag']); if(kc_validate($num,2)) $arr[]=$rs['ktag']; } array_unique($arr);//删除重复 $arr=array_diff($arr,array(null)); return implode(',',$arr); } } |
youjoy | 发表于:10-11-30 13:23 编辑于:11-30 13:29 9楼 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() |
关键字支持空格,大概要改以下两处:
portal/core.class.php 中: public function getKey($str,$key=''){ 内部: $key_array=preg_split("/[s,]+/",$key); 改为: $key_array=explode(',',$key); public function getTag($str,$key=''){ 内部: $array_key=preg_split("/[s,]+/",$key); 改为: $array_key=explode(',',$key); 这样改了以后,你在输入关键字的时候就必须用,分隔。 说明:原来老大用的正则,这里就没必要了,所以用了explode函数。如果你想用其它的符合来分隔也可以,在前面加上一个替换(替换成,)就可以了。 |
pktsandy | 发表于:10-11-30 13:47 10楼 [回复] #Top# |
---|---|
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |