Phpcms V9调用热门TAG要使用Get SQL语句,调用tag,但是PHPCMS默认没有完善tag功能,必须下载一个插件:
百度网盘下载地址:
http://pan.baidu.com/s/1i4c88Rj
经实际操作,成功且给力!推荐之!
步骤如下:
一:首先将压缩包解压以后将phpcms文件夹放到根目录覆盖原来的文件夹
二:打开phpcms/model/content_model.class.php 找到
if(!$isimport && $data[‘status’]==99) {
在下面添加如下代码:
if($systeminfo[‘keywords’]) {
$this->db_tags = pc_base::load_model(‘tags_model’);
//$this->db_tags_content = pc_base::load_model(‘tags_content_model’);
$keywords = strpos($systeminfo[‘keywords’], ‘,’) !== false ? explode(‘,’, $systeminfo[‘keywords’]) : explode(‘ ‘, $systeminfo[‘keywords’]);
$sql = ”;
foreach($keywords as $key) {
if($this->db_tags->get_one(“`tag`=’$key'”, ‘tagid’)){
$this->db_tags->query(“UPDATE `ge_tags` SET `usetimes`=usetimes+1 WHERE tag=’$key'”);
} else {
$this->db_tags->query(“INSERT INTO `ge_tags`(`tag`,`usetimes`,`lastusetime`,`lasthittime`)VALUES(‘$key’,1,”.SYS_TIME.”,”.SYS_TIME.”)”);
}
$sql .= “,(‘$key’,’$urls[0]’,’$systeminfo[title]’,$this->siteid,$modelid,$id,$systeminfo[catid],”.SYS_TIME.”)”;
}
if($sql){
$sql = “INSERT INTO `ge_tags_content` (`tag`,`url`,`title`,`siteid`,`modelid`,`contentid`,`catid`,`updatetime`) VALUES “.substr($sql, 1);
$this->db_tags->query($sql);
}
}
接着找到
$this->content_check_db->update($check_data,array(‘checkid’=>’c-‘.$id.’-‘.$this->modelid));
在下面添加如下代码:
if($systeminfo[‘keywords’]){
$this->db_tags = pc_base::load_model(‘tags_model’);
$this->db_tags_content = pc_base::load_model(‘tags_content_model’);
$keywords = strpos($systeminfo[‘keywords’], ‘,’) !== false ? explode(‘,’, $systeminfo[‘keywords’]) : explode(‘ ‘, $systeminfo[‘keywords’]);
$sql = ”;
foreach($keywords as $key){
if(!$this->db_tags_content->get_one(“`tag`=’$key’ AND `contentid` = $id AND `catid` =$systeminfo[catid] “, ‘contentid’)){
if($this->db_tags->get_one(“`tag`=’$key'”, ‘tagid’)){
$this->db_tags->query(“UPDATE `ge_tags` SET `usetimes`=usetimes+1 WHERE tag=’$key'”);
} else {
$this->db_tags->query(“INSERT INTO `ge_tags`(`tag`,`usetimes`,`lastusetime`,`lasthittime`)VALUES(‘$key’,1,”.SYS_TIME.”,”.SYS_TIME.”)”);
}
$sql .= “,(‘$key’,’$urls[0]’,’$systeminfo[title]’,$this->siteid,$this->modelid,$id,$systeminfo[catid],”.SYS_TIME.”)”;
}
}
if($sql){
$sql = “INSERT INTO `ge_tags_content` (`tag`,`url`,`title`,`siteid`,`modelid`,`contentid`,`catid`,`updatetime`) VALUES “.substr($sql, 1);
$this->db_tags->query($sql);
}
}
然后进入后台管理模块;可以看到TAG标签模块;点安装;再重建引索即可
三:调用方法
{pc:get sql=”SELECT tag,hits FROM ge_tags order by hits desc” num=”20″}
{loop $data $r}
<a href=”{APP_PATH}index.php?m=search&c=index&a=init&typeid=1&q={$r[tag]}&time=all”>{$r[tag]}</a>
{/loop}
{/pc}