当前位置: 首页 > news >正文

有php的转跳文件吗,DEDE实现转跳属性文档在模板上调用出转跳地址

首先在/include/extend.func.php增加以下方法:

/**

* 动态地址转静态输出 by Windchaser QQ:939238564

* $arcurl 动态网址

* @return String

*/

function arcurlHtml($arcurl){

preg_match('/view.php\?aid=(\d+)/',$arcurl,$arcid);

if(!empty($arcid) && is_array($arcid)){//匹配是否存在动态地址

global $dsql;

$addtable = $dsql->GetOne("SELECT channel.addtable FROM #@__channeltype AS channel LEFT JOIN #@__archives AS arc ON arc.channel=channel.id

WHERE arc.id='{$arcid[1]}'");//获取模型类型表名

$redirecturl = $dsql->GetOne("SELECT redirecturl FROM {$addtable['addtable']} WHERE aid = '{$arcid[1]}'");//动态获取表名,并查询redirecturl字段数据

if(!empty($redirecturl['redirecturl'])){

return $redirecturl['redirecturl'];//返回redirecturl字段数据

}else{

return $arcurl;

}

}else{//非动态地址直接返回原地址

return $arcurl;

}

}

在模板上的使用方式有两种形式:

#第一种:

[field:arcurl function='arcurlHtml(@me)'/]

#第二种:

[field:id runphp='yes'] $id=@me;@me='';$url=GetOneArchive($id);@me=$url['arcurl'];@me=arcurlHtml(@me);[/field:id]

完整调用:

#第一种

{dede:arclist titlelen='45' channelid='-1' limit='0,4' type='commend.' flag='c'}

%5D

{/dede:arclist}

#第二种

{dede:sql sql="SELECT * FROM xzzj_channeltype a left join xzzj_archives b on a.id = b.channel where a.id=-1 ORDER BY b.pubdate DESC LIMIT 0,2"}

[field:title/][field:title/]

{/dede:sql}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章:

  • oracle vm redhat共享文件夹,virtual box虚拟机在linux下设置共享文件夹(示例代码)
  • 逻辑io 物理io oracle,物理IO与逻辑IO
  • oracle是哪种体系结构,Oracle体系结构是什么?
  • oracle dataguard文档,完整版Oracle_DataGuard文档
  • linux命令dm,Linux systool 命令用法详解-Linux命令大全(手册)
  • linux多核操作命令,Linux多核并行编程关键技术
  • linux退出登录脚本,Linux实现自动登录的实例讲解
  • linux升级openssh提示密码错误,关于linux升级openssh须知
  • linux 无法清空大文件内容,在Linux中5种清空或清空大型文件内容的方法
  • linux 入口流控 虚拟设备,Linux下使用虚拟网卡的ingress流控(入口流控)
  • ucos运行linux文件,关于移植ucosii到windows和linux平台下的思路
  • linux strace 跟踪线程,获取线程id--strace跟踪线程系统调用
  • linux 非root进程,Linux查看非root运行的进程
  • linux下多路径dm不一致,DM多路径存储
  • linux虚拟主机管理平台,8 款顶级的虚拟主机管理系统
  • CSS相对定位
  • React 快速上手 - 07 前端路由 react-router
  • scrapy学习之路4(itemloder的使用)
  • vue2.0项目引入element-ui
  • vuex 学习笔记 01
  • 高程读书笔记 第六章 面向对象程序设计
  • 基于Vue2全家桶的移动端AppDEMO实现
  • 基于游标的分页接口实现
  • 排序算法学习笔记
  • 手机app有了短信验证码还有没必要有图片验证码?
  • 用element的upload组件实现多图片上传和压缩
  • 正则表达式小结
  • Mac 上flink的安装与启动
  • postgresql行列转换函数
  • 昨天1024程序员节,我故意写了个死循环~
  • ​人工智能书单(数学基础篇)
  • # 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告
  • (bean配置类的注解开发)学习Spring的第十三天
  • (八)Flask之app.route装饰器函数的参数
  • (草履虫都可以看懂的)PyQt子窗口向主窗口传递参数,主窗口接收子窗口信号、参数。
  • (剑指Offer)面试题34:丑数
  • (十)T检验-第一部分
  • (一)pytest自动化测试框架之生成测试报告(mac系统)
  • (转)Oracle 9i 数据库设计指引全集(1)
  • (转)我也是一只IT小小鸟
  • (轉貼) 資訊相關科系畢業的學生,未來會是什麼樣子?(Misc)
  • .NET Core中Emit的使用
  • .NET 中各种混淆(Obfuscation)的含义、原理、实际效果和不同级别的差异(使用 SmartAssembly)
  • /usr/lib/mysql/plugin权限_给数据库增加密码策略遇到的权限问题
  • @SuppressWarnings注解
  • [ Linux 长征路第五篇 ] make/Makefile Linux项目自动化创建工具
  • [ vulhub漏洞复现篇 ] Apache APISIX 默认密钥漏洞 CVE-2020-13945
  • [ 转载 ] SharePoint 资料
  • [23] 4K4D: Real-Time 4D View Synthesis at 4K Resolution
  • [AIGC] Redis基础命令集详细介绍
  • [BZOJ4010]菜肴制作
  • [C++]类和对象(中)
  • [C进阶] 数据在内存中的存储——浮点型篇
  • [delphi]保证程序只运行一个实例
  • [ffmpeg] x264 配置参数解析