dedecms首页调用指定栏目
时间 : 2024-01-05 16:34:02 声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

最佳答案

在DedeCMS中,要在首页调用指定栏目的内容,有以下几种方法:

方法一:使用动态标签调用

1. 在dede根目录下找到include/arc.listview.inc.php文件,备份该文件(以防修改出错后恢复原来的文件);

2. 打开arc.listview.inc.php文件,找到以下代码块:

```php

// 调用栏目开始

for(; $row = $dsql->GetArray($rs); )

{

if($cfg_mainsite==$row['sitepath'])

{

$row['arcurl'] = GetFileUrl($row['id'],$row['typeid'],$row['senddate'],$row['arcurl'],$row['ismake'],$row['channel'],$row['namerule'],$row['typedir'],$row['money'],$row['filename'],$row['siteurl'],$row['sitepath']);

}

else

{

$row['arcurl'] = $row['sitepath'].$row['arcurl'];

}

if(strtolower($row['ismake'])!='y')

{

$row['arcurl'] = $row['moresite'] == 0 ? $row['arcurl'] : $row['siteurl'].$row['arcurl'];

}

$row['title'] = preg_replace("/<(.*)>/isU","",$row['title']);

if(strlen($row['title'])>20)

{

$row['title'] = cn_substr($row['title'], 20);

}

if($row['color']!='')

{

$row['title'] = "<font color='".$row['color']."'>".$row['title']."</font>";

}

if($row['bold']==1)

{

$row['title'] = "<b>".$row['title']."</b>";

}

$row['description'] = cn_substr($row['description'], $cfg_index_description);

$row['filename'] = "<a href='{$row['arcurl']}'>".$row['title']."</a>";

if($row['litpic']!='') $row['litpic'] = "<a href='{$row['arcurl']}'><img src='{$row['litpic']}' width='{$cfg_index_imgwidth}' height='{$cfg_index_imgheight}' /></a>";

/* 下边两个 IF 是交叉样式 */

if($i%2==0){

$tbody->SetTemplet($dirname."/templets/".$index_templet_mv1);

$tv->SetVar($row);

$tbody->ParseTempletsFirst('$arcListCV');

}else{

$tbody->SetTemplet($dirname."/templets/".$index_templet_mv2);

$tv->SetVar($row);

$tbody->ParseTempletsFirst('$arcListCV');

}

if($i++ > $m)

{

break;

}

}

// 调用栏目结束

3. 在该代码块的前面添加以下代码,来指定要调用的栏目:

```php

$typeid = 栏目ID;

$rs = $dsql->ExecuteNoneQuery2("SELECT arc.*,tp.typedir,tp.typename,tp.namerule,tp.siteurl,tp.sitepath FROM `{$tblprefix}arctype` tp LEFT JOIN `{$tblprefix}archives` arc ON arc.typeid=tp.id WHERE (arc.ispart<>2 OR arc.ispart is NULL) AND (arc.typeid=$typeid OR tp.topid=$typeid OR arc.typeid IN (SELECT id FROM `{$tblprefix}arctype` WHERE topid=typeid))) $orderby $limit");

4. 保存并上传修改后的arc.listview.inc.php文件到dede根目录。

方法二:使用系统模块调用

1. 登录DedeCMS后台,进入“系统模块”->“模块管理”;

2. 点击“新增模块”按钮,填写模块名称和实际文件(/templets/default/index.htm),点击“保存”;

3. 在“编辑模块”页面,点击“页面代码”标签页,在“首页模板代码”文本框中添加以下代码:


指定栏目标题

4. 将上述代码中的`指定栏目标题`修改为目标栏目的名称;

5. 点击“保存并关闭”。

以上两种方法,都可以实现在DedeCMS首页调用指定栏目的内容。请选择适合自己的方法进行操作。

其他答案

在dedecms中,要调用指定栏目的内容,在首页上展示,可以通过以下方法实现:

1. 首先,登录dedecms后台管理系统,在左侧导航栏中找到“栏目管理”并点击进入。

2. 在栏目管理页面中,可以看到网站的所有栏目列表。找到要调用的指定栏目,点击右侧的“添加新子栏目”按钮。

3. 在添加子栏目的页面中,填写栏目名称、栏目类型等基本信息,然后将“在首页显示”选项设置为“是”。

4. 在添加子栏目的页面中,还可以设置该栏目的其他参数,如栏目模板、URL规则等。

5. 点击“保存”按钮,保存设置并返回栏目管理页面。

6. 在栏目管理页面中,找到刚刚创建的子栏目,在其右侧的“栏目操作”列中,点击“生成HTML”。

7. 在生成HTML页面中,选择要生成的页面类型,一般选择“首页”,然后点击“生成HTML”按钮。

8. dedecms会自动生成首页的HTML文件,并在网站首页显示该指定栏目的内容。

通过以上步骤,你就可以在dedecms的首页上调用指定栏目的内容了。记得在栏目管理页面中设置好栏目的显示顺序,以确保内容的展示位置符合你的要求。