帝国cms教程

帝国CMS8.0父子信息调用方法

我的站长站 2025-04-24 人阅读

帝国CMS8.0版新增父子信息功能,让一条信息也能成为一个信息、一个栏目、一个专题、甚至一个网站。本文共有四个部分:

一、父子信息功能使用流程。

二、调用子信息:可以用索引灵动标签调用。

三、父子信息列表访问地址的语法说明。

四、进阶:调用当前父子信息的子类及信息列表。

一、父子信息功能使用流程:

1、在管理信息页面,可将某一信息加入父信息,如下图:

(加入父信息前会显示“--”,点击进入增加父信息页面;加入父信息后会显示“父”字,点击进入管理子信息页面。)

2、增加父信息后,增加信息时就会有选择父信息选项设置,可以选择多个父信息及子信息分类:

3、除了增加信息页面可以增加子信息外,还可以在管理子信息页面批量推送子信息到父信息里:


二、调用子信息:可以用索引灵动标签调用

(一)、索引灵动标签语法:

[e:indexloop={索引分类ID,显示条数,操作类型,栏目ID,系统模型ID,附加SQL条件}]
模板代码内容
[/e:indexloop]

(二)、调用例子:

例子1、调用“父信息公共ID=1000010000000101”的最新子信息:(数量=10,操作类型=12)

[e:indexloop={'1000010000000101',10,12,'',''}]
<a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> <br>
[/e:indexloop]

例子2、调用“一级分类=2”的最新子信息:(数量=10,操作类型=12)

方法一:

[e:indexloop={'父信息公共ID',10,12,'','',"bcid=2"}]
<a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> <br>
[/e:indexloop]方法二:用SQL调用 (分表=1,操作类型=11)
[e:indexloop={"select id,classid from {$dbtbpre}enewsfz_data_1 where bcid=2 order by newstime desc".do_dblimit(10),10,11,'',''}]
<a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> <br>
[/e:indexloop]

例子3、调用“二级分类=5”的最新子信息:(数量=10,操作类型=12)

方法一:

[e:indexloop={'父信息公共ID',10,12,'','',"cid=5"}]
<a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> <br>
[/e:indexloop]方法二:用SQL调用 (分表=1,操作类型=11)
[e:indexloop={"select id,classid from {$dbtbpre}enewsfz_data_1 where cid=5 order by newstime desc".do_dblimit(10),10,11,'',''}]
<a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> <br>
[/e:indexloop]


三、父子信息列表访问地址的语法说明:

(一)、基本语法:

/e/fzinfo/?fztid=父信息的表ID&fzid=父信息的信息ID&cid=子信息的分类ID

父信息的表ID:就是栏目使用的系统模型所属数据表ID (查看:后台>系统>管理数据表)

父信息的信息ID:父信息的信息ID。

子信息的分类ID:不限一级或二级分类,自动识别。-1为父信息下所有子信息列表(使用第一个列表式分类的设置)。


(二)、附加语法说明:

1、列出某一个系统模型下的子信息:

指定系统模型ID即可,模型ID变量名为:mid

例子:下面链接为显示新闻系统模型下的子信息:

/e/fzinfo/?fztid=父信息的表ID&fzid=父信息的信息ID&cid=子信息的分类ID&mid=1


2、列出多栏目的子信息列表:

栏目ID变量名:classid

显示多个栏目可以用逗号格开

例子:下面为显示栏目ID=2的子信息

/e/fzinfo/?fztid=父信息的表ID&fzid=父信息的信息ID&cid=子信息的分类ID&classid=2


3、列出某级头条的子信息:(为子信息单独的头条设置)

指定某级头条即可,头条变量名为:firsttitle。所有头条级别值可为-1

例子:下面链接为显示9级头条的子信息:

/e/fzinfo/?fztid=父信息的表ID&fzid=父信息的信息ID&cid=子信息的分类ID&firsttitle=9


4、列出某级推荐的子信息:(为子信息单独的推荐设置)

指定某级推荐即可,推荐变量名为:isgood。所有推荐级别值可为-1

例子:下面链接为显示8级推荐的子信息:

/e/fzinfo/?fztid=父信息的表ID&fzid=父信息的信息ID&cid=子信息的分类ID&isgood=8


5、指定信息发布时间起始和结束时间范围:

起始时间变量名:starttime ;结束时间变量名:endtime

时间格式:'2025-01-18',不指定起始时间则表示显示结束时间之前的所有信息

例子:下面为显示2025-01-18当天的子信息列表

/e/fzinfo/?fztid=父信息的表ID&fzid=父信息的信息ID&cid=子信息的分类ID&starttime=2025-01-18&endtime=2025-01-18


四、进阶:调用当前父子信息的子类及信息列表

(一)、获取当前父信息ID与当前父子分类ID:

1、当在父信息页面时:

当前父信息ID为:$navinfor['id']

当前父信息所属栏目ID为:$navinfor['classid']

所以当前父信息的公共ID为:$uget_pubid=ReturnInfoPubid($navinfor['classid'],$navinfor['id']);


2、当在父子分类页面时:

当前子类分类ID为:$GLOBALS['navclassid'],负数为所有分类。

当前父信息表内容数组为:$GLOBALS['navinfor']

当前父信息的公共ID为:$GLOBALS['navinfor']['pubid']


(二)、调用当前父信息下的子信息分类:(两级分类)

1、当在父信息页面时:

<?php
$uget_fzid=(int)$navinfor['id'];
$uget_fzclassid=(int)$navinfor['classid'];
$uget_fztid=(int)$class_r[$uget_fzclassid]['tid'];
$uget_pubid=ReturnInfoPubid($uget_fzclassid,$uget_fzid);
//一级分类
$ufzdatabcsql=$empire->query("select cid,bcid,cname from {$dbtbpre}enewsfz_class where pubid='$uget_pubid' and bcid=0 order by myorder");
while($ufzdatabcr=$empire->fetch($ufzdatabcsql))
{
    $ufzdatabc_id=$ufzdatabcr['cid'];
    $ufzdatabc_name=$ufzdatabcr['cname'];
    $ufzdatabc_url=eReturnRewriteFzUrl($uget_fztid,$uget_fzid,$ufzdatabcr['cid'],1);
    ?>
    
    <b>一级分类ID:<?=$ufzdatabc_id?>,一级分类名称:<?=$ufzdatabc_name?>,一级分类地址:<?=$ufzdatabc_url['pageurl']?></b><br>
    <?php
    //二级分类
    $ufzdatacsql=$empire->query("select cid,bcid,cname from {$dbtbpre}enewsfz_class where bcid='".$ufzdatabcr['cid']."' order by myorder");
    while($ufzdatacr=$empire->fetch($ufzdatacsql))
    {
        $ufzdatac_id=$ufzdatacr['cid'];
        $ufzdatac_name=$ufzdatacr['cname'];
        $ufzdatac_url=eReturnRewriteFzUrl($uget_fztid,$uget_fzid,$ufzdatacr['cid'],1);
        ?>
        
        二级分类ID:<?=$ufzdatac_id?>,二级分类名称:<?=$ufzdatac_name?>,二级分类地址:<?=$ufzdatac_url['pageurl']?><br>
        
        <?php
    }
    ?>
    <br>
<?php
}
?>

2、当在父子分类页面时:

<?php
$uget_fzcid=(int)$GLOBALS['navclassid'];
$uget_pubid=RepPostVar($GLOBALS['navinfor']['pubid']);
$uget_fzid=(int)$GLOBALS['navinfor']['id'];
$uget_fzclassid=(int)$GLOBALS['navinfor']['classid'];
$uget_fztid=(int)$class_r[$uget_fzclassid]['tid'];
//一级分类
$ufzdatabcsql=$empire->query("select cid,bcid,cname from {$dbtbpre}enewsfz_class where pubid='$uget_pubid' and bcid=0 order by myorder");
while($ufzdatabcr=$empire->fetch($ufzdatabcsql))
{
    $ufzdatabc_id=$ufzdatabcr['cid'];
    $ufzdatabc_name=$ufzdatabcr['cname'];
    $ufzdatabc_url=eReturnRewriteFzUrl($uget_fztid,$uget_fzid,$ufzdatabcr['cid'],1);
    ?>
    
    <b>一级分类ID:<?=$ufzdatabc_id?>,一级分类名称:<?=$ufzdatabc_name?>,一级分类地址:<?=$ufzdatabc_url['pageurl']?></b><br>
    <?php
    //二级分类
    $ufzdatacsql=$empire->query("select cid,bcid,cname from {$dbtbpre}enewsfz_class where bcid='".$ufzdatabcr['cid']."' order by myorder");
    while($ufzdatacr=$empire->fetch($ufzdatacsql))
    {
        $ufzdatac_id=$ufzdatacr['cid'];
        $ufzdatac_name=$ufzdatacr['cname'];
        $ufzdatac_url=eReturnRewriteFzUrl($uget_fztid,$uget_fzid,$ufzdatacr['cid'],1);
        ?>
        
        二级分类ID:<?=$ufzdatac_id?>,二级分类名称:<?=$ufzdatac_name?>,二级分类地址:<?=$ufzdatac_url['pageurl']?><br>
        
        <?php
    }
    ?>
    <br>
<?php
}
?>

(三)、调用当前父信息下面的子信息:(当在父信息页面时)

<?php
$uget_fzid=(int)$navinfor['id'];
$uget_fzclassid=(int)$navinfor['classid'];
$uget_fztid=(int)$class_r[$uget_fzclassid]['tid'];
$uget_pubid=ReturnInfoPubid($uget_fzclassid,$uget_fzid);
?>
[e:indexloop={$uget_pubid,10,12,'',''}]
<a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> <br>
[/e:indexloop]

(四)、调用当前分类下面的子信息:(当在父子分类页面时,数量=10、自动识别一级与二级分类、自动识别分表)

1、方法一:

<?php
$uget_fzcid=(int)$GLOBALS['navclassid'];
$uget_pubid=RepPostVar($GLOBALS['navinfor']['pubid']);
$uget_fzdatacwhere='';
if($uget_fzcid>0)//非不限分类
{
    $uget_fzdatacr=$empire->fetch1("select pubid,bcid,cname from {$dbtbpre}enewsfz_class where cid='$uget_fzcid'");
    $uget_pubid=$uget_fzdatacr['pubid'];
    if($uget_fzdatacr['bcid'])
    {
        $uget_fzdatacwhere="cid='".$uget_fzcid."'";
    }
    else
    {
        $uget_fzdatacwhere="bcid='".$uget_fzcid."'";
    }
}
?>
[e:indexloop={$uget_pubid,10,12,'','',$uget_fzdatacwhere}]
<a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> <br>
[/e:indexloop]

2、方法二:(SQL调用)

<?php
$uget_fzcid=(int)$GLOBALS['navclassid'];
$uget_pubid=RepPostVar($GLOBALS['navinfor']['pubid']);
$uget_fzstb=(int)$GLOBALS['navinfor']['fzstb'];
$uget_fzdatacwhere="bpubid='$uget_pubid'";
if($uget_fzcid>0)//非不限分类
{
    $uget_fzdatacr=$empire->fetch1("select pubid,bcid,cname from {$dbtbpre}enewsfz_class where cid='$uget_fzcid'");
    $uget_pubid=$uget_fzdatacr['pubid'];
    if($uget_fzdatacr['bcid'])
    {
        $uget_fzdatacwhere="cid='".$uget_fzcid."'";
    }
    else
    {
        $uget_fzdatacwhere="bcid='".$uget_fzcid."'";
    }
}
//SQL语句
$uget_fzdatasql="select id,classid from {$dbtbpre}enewsfz_data_".$uget_fzstb." where ".$uget_fzdatacwhere." order by newstime desc".do_dblimit(10);
?>
[e:indexloop={$uget_fzdatasql,10,11,'',''}]
<a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> <br>
[/e:indexloop]
相关推荐
  • 帝国CMS8.0教程
  • 帝国CMS调用方法
  • 帝国CMS8.0新增phomehdpic标签调用JS幻灯图片

    帝国CMS8.0新增phomehdpic标签调用JS幻灯图片,解决了大部分浏览器无法使用FLASH的问题。phomehdpic介绍[phomehdpic]操作类型,栏目ID/标题分类ID,显示总数,图片宽度,图片高度,是否显示标题,标题截取数,标题颜色,标题字大小,附加SQL条件,显示排序[/pho...

    帝国cms教程 4 1个月前
  • 帝国CMS8.0新增不同系统模型管理不同信息管理列表功能

    帝国CMS8.0新增不同系统模型管理不同信息管理列表功能,也就是后台信息管理列表可以按系统模型区分显示了,不同系统模型可使用不同的管理列表界面,并且后台可直接增加、修改、删除列表界面模板内容,扩展更方便。比如你需要后台的新闻信息管理列表显示:[免...

    帝国cms教程 5 1个月前
  • 帝国CMS8.0附件功能升级,新增自定义目录名

    升级列表1、附件目录名支持自定义。(后台>系统>系统参数设置>文件设置 里设置)2、附件默认目录更改为新的目录:/d/file/efpub/,与其它附件区分开,扩展更方便。3、系统参数设置的附件目录设置去除按栏目目录存放选项,附件上传目录更统一,备份更简单。4、栏目...

    帝国cms教程 8 1个月前
  • 帝国CMS调用栏目自定义字段方法

    帝国CMS调用栏目自定义字段方法说明:封面模板,列表模板,内容模板都可以用,且调用方式都是一样的调用标签:<?=ReturnClassAddField(0,&#39;自定义字段&#39;)?>调用多个:<?=$value=ReturnClassAddField(1,&#39;自定义字段1,自定义字段2&#39;)?>取值:<?=$val...

    帝国cms教程 163 4年前
  • 帝国CMS新手教程调用栏目别名

    帝国CMS调用网站标题灵动标签调用网站标题:<?=$public_r[sitename]?> 帝国CMS标签调用网站标题:[!--pagetitle--] 帝国CMS调用栏目别名: <?=$class_r[$GLOBALS[navclas

    帝国cms教程 280 12年前
  • 帝国CMS调用网站标题的方法

    帝国CMS_调用网站标题的方法方法1: [!--pagetitle--]方法2:<?=$public_r[sitename]?>

    帝国cms教程 384 12年前
最新更新