phpcms 关键词keyword表加入栏目catid的方法
首先在v9_keyword表中加入catid 字段,类型 smallint(10),属性为UNSIGNED
修改phpcms/modules/content/fields/keyword/update.inc.php,注意红色部分为新增
function keyword ($field, $value) {
//获取post过来的关键字,关键字用空格或者‘,’分割的
$data = array();
$data = preg_split("/[ ,]+/", $value);
//加载关键字的数据模型
$keyword_db = pc_base::load_model('keyword_model');
$keyword_data_db = pc_base::load_model('keyword_data_model');
pc_base::load_sys_func('iconv');
if (is_array($data) && !empty($data)) {
$siteid = get_siteid();
$catid = $this->data['catid'];
foreach ($data as $v) {
$v = defined('IN_ADMIN') ? $v : safe_replace(addslashes($v));
$v = str_replace(array('//','#','.'),' ',$v);
if (!$r = $keyword_db->get_one(array('keyword'=>$v, 'siteid'=>$siteid))) {
$letters = gbk_to_pinyin($v);
$letter = strtolower(implode('', $letters));
$tagid = $keyword_db->insert(array('keyword'=>$v, 'siteid'=>$siteid, 'catid'=>$catid, 'pinyin'=>$letter, 'videonum'=>1), true);
} else {
$keyword_db->update(array('videonum'=>'+=1'), array('id'=>$r['id']));
$tagid = $r['id'];
}
$contentid = $this->id.'-'.$this->modelid;
if (!$keyword_data_db->get_one(array('tagid'=>$tagid, 'siteid'=>$siteid, 'contentid'=>$contentid))) {
//文章数据为空,插入数据
$keyword_data_db->insert(array('tagid'=>$tagid, 'siteid'=>$siteid, 'catid'=>$catid, 'contentid'=>$contentid));
} else{
//文章数据不为空,先删除相关文章ID的数据再插入
$keyword_data_db->delete(array('contentid'=>$contentid));
$keyword_data_db->insert(array('tagid'=>$tagid, 'siteid'=>$siteid, 'catid'=>$catid, 'contentid'=>$contentid));
}
unset($contentid, $tagid, $letters);
}
}
return $value;
}
更新全站缓存!!!!!
调用方法
{pc:get sql="SELECT keyword FROM `v9_keyword` WHERE siteid=$siteid AND catid=$catid ORDER BY `videonum` DESC" num="66"}
{loop $data $r}
{php $num++}
<a href="{APP_PATH}index.php?m=content&c=tag&catid={$catid}&a=lists&tag={$r[keyword]}" class="{$num}" title="{$r[keyword]}">{$r[keyword]}</a>
{/loop}
{/pc}
后端相关处理文件为:caches/caches_model/caches_data/content_update.class.php (可以在这个页面查看相关语法)
相关文章
phpcms-v9中将一个站点下的文章内容完美的推送到另一个站点下2024-09-24
phpcms loop循环判断是否为最后一条的代码2024-06-18
Phpcms V9 文章或图片模型增加相关下载功能2022-12-30
phpcms文章列表增加一键推送到百度功能2022-12-08
phpcms 标题SEO栏目不同的代码2022-11-14
PHPCMS替换内容的两种方法:str_replace和preg_replace2022-10-25
phpcms 搜索结果第一页比设定的多一条数据的解决办法2021-01-05
phpcms v9 字段多行文本不换行的解决办法2020-09-22
phpcms 栏目和文章页面“您没有访问该信息的权限”跳转登陆页面2020-09-17
phpcms 模板header包含action="lists"导致搜索结果错误的解决方案2020-04-26