首页站内杂志技术文摘
文章内容页

帝国cms首页调用全部栏目及相关字段

  • 作者:雨祺
  • 来源: 原创
  • 发表于2024-09-08 11:32:57
  • 被阅读0
  • 4414论坛某坛友提到以下要求:

    目前需要在首页调用本站的所有栏目,包括,排序序号递增、栏目名称、栏目缩略图,别名,自定义栏目字段(标红的这2个字段调用不出来),[color=#000]各位大神怎么调用的,有偿!显示结果如下:
    [color=#000]1、栏目名称A、栏目缩略图、栏目别名、栏目自定义字段
    [color=#000]2、栏目名称B、栏目缩略图、栏目别名、栏目自定义字段
    [color=#000]3、栏目名称C、栏目缩略图、栏目别名、栏目自定义字段
    [color=#000]...

    其实是可以用灵动标签解决的,相关代码如下:
    1. [e:loop={"select  *  from {$dbtbpre}enewsclass where bclassid=0  order by myorder,classid asc",0,24,0}] 
    2. <?php   
    3. $classurl=sys_ReturnBqClassname($bqr,9);//取得栏目地址   
    4. $class="";   
    5. if($GLOBALS['navclassid'])  {   
    6. $fcr=explode('|',$class_r[$GLOBALS['navclassid']]['featherclass']);   
    7. $topbclassid=$fcr[1]?$fcr[1]:$GLOBALS['navclassid'];//取得当前栏目的一级栏目ID   
    8. if($bqr[classid]==$topbclassid)  {   
    9. $class=" class='on'";    
    10. }   
    11. }   
    12. ?> 
    13. <li<?=$class?>> 
    14. <a href="<?=$classurl?>" class="tit link">大栏目:<?=$bqr['classname']?>(<?=$bqr['intro']?>)</a> 
    15. <div class="menu">子栏目: 
    16. <?php   
    17. $ecms_bq_sql2=sys_ReturnEcmsLoopBq("select  *  from [!db.pre!]enewsclass where bclassid='$bqr[classid]' order by myorder limit 10",20,24,0);   
    18. $bqno2=0;   
    19. while($bqr2=$empire->fetch($ecms_bq_sql2))  {   
    20. $bqsr2=sys_ReturnEcmsLoopStext($bqr2);   
    21. $bqno2++;   
    22. ?> 
    23. <a href="/<?=$bqr2['classpath']?>/"><?=$bqr2['classname']?></a> 
    24. <?php   
    25. }   
    26. ?> 
    27. </div> 
    28. </li> 
    29. [/e:loop] 
    那如果写成接口的形式那又怎么写呢,以本人二开基础上面写个。写法如下
    1. // 获取顶级类别信息 
    2. $list = $api->load('db')->select('[!db.pre!]enewsclass''bclassid,classid,classname,classpagekey,intro,tbname''bclassid='.$bclassid.' and classid not in(100,133,180,188,216)''showclass='.$showclass, 'myorder DESC'); 
    3. $result = [];// 初始化结果数组 
    4. // 获取所有子类别信息 
    5. foreach ($list as $top) { 
    6.     $son = $class_r[$top['classid']]['sonclass']; 
    7.     $sonarr = explode("|", $son); 
    8.     array_shift($sonarr);  
    9.     array_pop($sonarr); 
    10.     $classtr = implode(",", $sonarr); 
    11.     if ($classtr) { 
    12.         $sonclass_sql = "classid in (" . $classtr . ")"
    13.         $lists = fetch_memcache0("select * from {$dbtbpre}enewsclass where $sonclass_sql"'Memcached''alltype', 3600 * 24 * 30); 
    14.         $topData = [ 
    15.             'topclassid' => $top['classid'], 
    16.             'topclassname' => $top['classname'], 
    17.             'topmid' => $class_r[$top['classid']]['modid'], 
    18.             'topclasspagekey' => $top['classpagekey'], 
    19.             'topintro' => $top['intro'], 
    20.             'sonclassid' => [], 
    21.             'sonclassname' => [], 
    22.             'sonclasspath' => [], 
    23.             'sonintro' => [], 
    24.             'sonmid' => [] 
    25.         ]; 
    26.         foreach ($lists as $class) { 
    27.             $topData['sonclassid'][] = $class['classid']; 
    28.             $topData['sonclassname'][] = $class['classname']; 
    29.             $topData['sonmid'][] = $class_r[$class['classid']]['modid']; 
    30.             $topData['sonclasspath'][] = $class['classpath']; 
    31.             $topData['sonintro'][] = $class['intro']; 
    32.         } 
    33.         $result[] = $topData; // 将顶级类别信息添加到结果数组 
    34.     } else { 
    35.         $result[] = [ 
    36.             'topclassid' => $top['classid'], 
    37.             'topclassname' => $top['classname'], 
    38.             'topmid' => $class_r[$top['classid']]['modid'], 
    39.             'topclasspagekey' => $top['classpagekey'], 
    40.             'topintro' => $top['intro'], 
    41.             'sonclassid' => [], 
    42.             'sonclassname' => [], 
    43.             'sonclasspath' => [], 
    44.             'sonintro' => [], 
    45.             'sonmid' => [] 
    46.         ]; 
    47.     } 
    48. $output = [ 
    49.     'code' => 1, 
    50.     'list' => $result, 
    51. ]; 
    52. // 输出json数据 
    53. $api->json($output); 
    【审核人:站长】

        标题:帝国cms首页调用全部栏目及相关字段

        本文链接:https://www.meiweny.cn/zazhi/zhongwangjiaocheng/1116.html

        赞一下

        深度阅读

        • 您也可以注册成为美文苑的作者,发表您的原创作品、分享您的心情!

        阅读记录

          关注美文苑