首页 > 教程 >
在dedecms首页和列表页、内容页上调用文章的副栏目名称和链接的方法
2023-03-09教程围观次
简介最近在做一个网站用到副栏目的调用,在网上搜了一下,没有找到一个好的方法,于是自己写了一个,希望能够帮到大家。方法一:内容页的调用写法:{dede:field.typeid2runphp='yes'}global$dsql;$ks=split(',',@me);$tname="";foreach($ksas$k){$k=trim($k);if($k!=""){if($row=$dsql->getOn
最近在做一个网站用到副栏目的调用,在网上搜了一下,没有找到一个好的方法,于是自己写了一个,希望能够帮到大家。
方法一:
内容页的调用写法:
首先在 dedecms 目录下 /plus/ 新建文件 type_ajax.php 内容如下:
方法一:
内容页的调用写法:
{dede:field.typeid2 runphp='yes'}
global $dsql;
$ks = split(',', @me);
$tname="";
foreach($ks as $k){
$k = trim($k);
if ($k!="") {
if ($row = $dsql->getOne("select *,ID as id1 from dede_arctype where id=".$k)){
$mpath=GetTypeUrl($row['id1'],MfTypedir($row['typedir']),$row['isdefault'],$row['defaultname'],
$row['ispart'],$row['namerule2'],$row['siteurl']);
$row['ispart'],$row['namerule2'],$row['siteurl']);
$tname.="<span><a href='{$mpath}'>".$row['typename']."</a></span>";
}
}
}
@me=substr($tname,0,strlen($tname)-1);
{/dede:field.typeid2
推荐用这种方法,不需要改东西就可以了。另外在网上看到另外一种方法,不过我没做测试,有兴趣的朋友可以试下。
方法二: 首页、列表页标签(在arclist、list等文章列表标签里用):
[field:typeid2 runphp='yes']
global $dsql;
$ks = split(',', @me);
$tname="";
foreach($ks as $k){
$k = trim($k);
if ($k!="") {
if ($row = $dsql->getOne("select *,ID as id1 from dede_arctype where id=".$k)){
$mpath=GetTypeUrl($row['id1'],MfTypedir($row['typedir']),$row['isdefault'],$row['defaultname'],$row['ispart'],
$row['namerule2'],$row['siteurl']);
$row['namerule2'],$row['siteurl']);
$tname.="<span><a href='{$mpath}'>".$row['typename']."</a></span>";
}
}
}
@me=substr($tname,0,strlen($tname)-1);
[/field:typeid2]
推荐用这种方法,不需要改东西就可以了。另外在网上看到另外一种方法,不过我没做测试,有兴趣的朋友可以试下。
首先在 dedecms 目录下 /plus/ 新建文件 type_ajax.php 内容如下:
<?php
require_once(dirname(__FILE__)."/../include/common.inc.php");
$action = isset($action) ? trim($action) : '';
$id = (isset($id) && is_numeric($id)) ? $id : 0;
if($id < 1)
{
exit();
}
$maintable = "dede_archives";
$digg = '';
$row = $dsql->GetOne("Select * From dede_archives where id = '$id' ");
$arr = split(",",$row['typeid2']);
foreach ($arr as $key=>$type)
{
$namelist = $dsql->GetOne("Select * From dede_arctype where id = '$type' ");
$digg .= '<a href=/plus/list.php?tid='.$type.'>'.$namelist['typename'].'<a>'." //";
}
AjaxHead();
echo $digg;
exit();
?>
dedecms 模板页调用
在<head>标记之间 加上
< language=" " type="text/ " src="{dede:global.cfg_cmsurl/}/include/dedeajax2.js"></ >
< language=" " type="text/ ">
<!--
function gettype(aid)
下载链接:网站源码/小程序源码/网站模板下载