首页 > CMS教程 > DEDECMS > 正文

织梦DEDECMS扩展标签怎么用

藏色散人
发布: 2020-01-11 09:17:12
原创
2128人浏览过

织梦DEDECMS扩展标签怎么用

织梦dedecms扩展标签怎么用?

织梦DEDECMS扩展标签演示实例

推荐学习:织梦cms

我们可以看一个示例标签:demotag.lib.php ,

if(!defined('DEDEINC')) 
{ 
exit("Request Error!"); 
} 
function lib_demotag(&$ctag,&$refObj) 
{ 
global $dsql,$envs; 
 
$attlist="row|12,titlelen|24"; 
FillAttsDefault($ctag->CAttribute->Items,$attlist); 
extract($ctag->CAttribute->Items, EXTR_SKIP); 
$revalue = ''; 
 
//------------------------------------------------------ 
$revalue = 'Hello Word!'; 
//------------------------------------------------------ 
return $revalue; 
} 
?>
登录后复制

我们会发现标签起作用了,输出了我们的内容。

cfa2b092ce699a40ce09b0de81d1e93.png

$revalue = 'Hello Word!'; 
$revalue .=" 
Row:".$row.";TitleLen:".$titlelen;
登录后复制

fedd4739bcf32b35ce1ffb3667e0ff0.png

这样我们可以看到,这个属性已经被创建变量并且赋值了。

接下来我们可以再进一步去修改这个标签。

function lib_writerarc(&$ctag,&$refObj)
登录后复制

接下来我们就可以编写查询语句及对底层模板处理的相关函数了

$revalue = ''; 
$innertext = $ctag->GetInnerText(); 
$ctp = new DedeTagParse(); 
$ctp->SetNameSpace('field', '[', ']'); 
$sql = "SELECT * FROM dede_archives WHERE writer='{$refObj->Fields['writer']}' limit 0, $row"; 
 
 
 
$dsql->Execute('me',$sql); 
while($rs = $dsql->GetArray('me')) 
{ 
 
$rs['title'] = cn_substr($rs['title'], $titlelen); 
 
$ctp->LoadSource($innertext); 
foreach($ctp->CTags as $tagid=>$ctag) { 
if(!emptyempty($rs[strtolower($ctag->GetName())])) { 
$ctp->Assign($tagid,$rs[$ctag->GetName()]); 
} 
} 
 
$revalue .= $ctp->GetResult(); 
}
登录后复制

最后返回这个值return $revalue;

整个文件内容如下:

if(!defined('DEDEINC')) 
{ 
exit("Request Error!"); 
} 
function lib_writerarc(&$ctag,&$refObj) 
{ 
global $dsql,$envs; 
 
$attlist="row|12,titlelen|24"; 
FillAttsDefault($ctag->CAttribute->Items,$attlist); 
extract($ctag->CAttribute->Items, EXTR_SKIP); 
$revalue = ''; 
$innertext = $ctag->GetInnerText(); 
$ctp = new DedeTagParse(); 
$ctp->SetNameSpace('field', '[', ']'); 
$sql = "SELECT * FROM dede_archives WHERE writer='{$refObj->Fields['writer']}' limit 0, $row"; 
$dsql->Execute('me',$sql); 
while($rs = $dsql->GetArray('me')) 
{ 
 
$rs['title'] = cn_substr($rs['title'], $titlelen); 
 
$ctp->LoadSource($innertext); 
foreach($ctp->CTags as $tagid=>$ctag) { 
if(!emptyempty($rs[strtolower($ctag->GetName())])) { 
$ctp->Assign($tagid,$rs[$ctag->GetName()]); 
} 
} 
 
$revalue .= $ctp->GetResult(); 
} 
return $revalue; 
} 
?>
登录后复制

通过动态浏览页面进行查看调试?aid=3

{dede:writerarc row='10' titlelen='6'} 
[field:title/]  
{/dede:writerarc}
登录后复制

0c7d83f6c2c23f6cb767704e435a193.png

以上就是织梦DEDECMS扩展标签怎么用的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
相关标签:
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号