在线客服与您一对一交流
当前位置: 主页 > 行业新闻 > IT技术 >

织梦根据栏目关键词或者栏目名称调用相关文档

一、根据栏目名称调用随机文档
在栏目页,如果栏目名称为“智能手机”,那么如果整站其他栏目里面含有“智能手机”这个关键词的文章都给调出来。方法如下 做个记号 以待后用。
将以下代码 复制到  include文件夹下的 common.func.php 里
function list_keyword($typename) 
 { 
     $tsql = new DedeSql(false); 
     $typename = ''; 
     $tsql->SetQuery("Select id,title From dede_archives  where keywords like '%$typename%'"); 
     $tsql->Execute('t'); 
     while($row = $tsql->GetArray('t',MYSQL_ASSOC)){
  $g=GetOneArchive($row['id']);
  $typename .= "<a href=".$g['arcurl'].">".$g['arctitle']."</a> ";
     } 
     return $typename; 
}
然后再栏目页模板里使用 {dede:field.typename function="list_keyword(@me)"/} 就可以了 经测试 5.6完全可用。
二、根据栏目关键词调用相关文档
 1、修改源文件 likearticle.lib.php
 注释的就是源代码,注释掉,修改为下面的代码,做个判断 ,不影响原来的
//$typeid = " AND arc.typeid IN($typeid) AND arc.id<>$arcid ";
 if($arcid){ $typeid = " AND arc.typeid IN($typeid) AND arc.id<>$arcid ";}
 else{$typeid = " AND arc.typeid IN($typeid)  ";}
//$typeid = " arc.typeid IN($typeid) AND arc.id<>$arcid ";
if($arcid){ $typeid = " arc.typeid IN($typeid) AND arc.id<>$arcid ";}
else{$typeid = " arc.typeid IN($typeid)";}
2、自定义函数  乱写的 没测试 估计很多问题
function list_keyword($curtid,$liketid) 
 { 
     $dsql = new DedeSql(false); 
     $sql="Select keywords, reid from dede_arctype  where id= $curtid"; 
     $row=$dsql->getOne($sql);
     $tkeyword=$row["keywords"];
     $reid = $row["reid"];
     if(!$liketid)
     {
$liketid = empty($reid)? $curtid:$reid;
     }
    if( !empty($liketid) && !preg_match('#,#', $liketid) ) {
        $liketid = GetSonIds($liketid);
    }
   
  if($tkeyword)
    {
            $keywords = explode(',' , $tkeyword);
            $keyword = '';
            $n = 1;
            foreach($keywords as $k)
            {
                if(trim($k)=='') continue;
                else $k = addslashes($k); 
                $keyword .= ($keyword=='' ? " CONCAT(keywords,' ',title) LIKE '%$k%' " : " OR CONCAT(keywords,' ',title) LIKE '%$k%' ");
                $n++;
            }
    }
     $dsql->SetQuery("Select id,title From dede_archives  where typeid IN($liketid) and $keyword"); 
     $tsql->Execute('t'); 
     while($row = $tsql->GetArray('t',MYSQL_ASSOC)){
     $g=GetOneArchive($row['id']);
     $typename .= "<a href=".$g['arcurl'].">".$g['arctitle']."</a> ";
     } 
     return $typename; 
}

相关文章:

  • 第一次使用的插件是 pdfobject.js 百度网盘下载地址:http://pan.baidu.com/s/1kUPhYdT 加载 script src=/style/js/pdfobject.js /script script type=text/javascript window.onload = function (){ var success = new PDFObject({ url: pdf文件地...

  • 5.7 生成列表页 改动 include/arc.listview.class.php 1.先设置 关闭副栏目(在系统----系统基本参数性能选项里) 2.一般网站不需要 栏目交叉 交叉 所以 找到94行注释掉: //获得交叉栏目ID /*if($this-Type...

  • 1、公共相同部分用引入1个静态文件方式,不解析 2、arclist标签进来不使用属性flag、不使用自定义字段addfields、不使用随机、相同部分用引入1个静态文件方式,不解析 3、tag标签或者关键词内链...

  • Service Unavailable The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later. Apache Server at www.XXX.com Port 80 网站症状:单栏目数据量7万+ 生成栏目504错误或者...

  • 插件界面 插件功能 支持记录当天审核记录 支持可控时间段审核 支持可控栏目审核 支持审核后生成HTML,包括首页,栏目列表页,内容页 支持审核后推送到百度和熊掌 支持查看推送记录 使用...

  • 从SEO优化角度考虑,列表页标题一样有些不好,就想着修改一下,可以从网上有很少这方面的资料,而且不是很完美。自己就动手修改了下,花了不少时间总算有点那么回事了,特记录。 普通...

  • 其实可以参考: DEDECMS织梦PHP主动推送代码(API新增内容和历史内容推送) , 只是API不同而已 ,熊掌号API和搜索资源平台的链接提交不同而已,修改API即可用,下面是创建单独的PHP文件, 需...

  • 一、新增内容主动推送 通过新增内容接口,提交站内 当天新产生内容的链接。新增内容享受24小时内抓取校验、快速展现优待。仅限提交绑定站点下的内容,否则无法成功提交,配额不可累计...

  • 因为我的后台二次开发过,突然织梦后台验证码不显示,网上的所有方法都试过了,不起作用,真的是让人o疼,经过我不懈努力、坚持不懈、爬山涉水、翻山越岭后竟然发现数据库连接信息的...

  • dede调用当前栏目页地址: 方法一: {dede:field.typedir/}/ 后面要价格斜杠才完美!你应该懂。 {dede:field.typeurl/} {dede:field.typelink/} 都调用不出来的。 方法二: {dede:type}[field:typelink /]{/dede:type} 如栏目...

  • 公司:西安蟠龙网络科技有限公司
  • 联系人:张经理
  • 手机/微信:
  • Q Q: 点击这里给我发消息
  • 地址:西安市雁塔区唐延南路11号逸翠园i都会