广告管理-1170PX*80PX
广告管理-770PX*90PX
当前位置:003建站资讯 > 建站程序 > 织梦 >

[织梦技巧]织梦dedecms联动级别前台调用

  • 织梦
  • 2019-07-13 00:00
  • admin
广告管理-720PX*80PX

织梦dedecms系统首页调用分类信息联动类别(地区,类型等)的方法如下:

需要注意:这个方法只适用于dedecms V5.5,V5.6,V5.7

dede模板系统中默认是没有办法调用枚举名(联动菜单名称)的,而只能调用枚举值,为了方便大家在以后制作模板,今天就给大家带来一个自定义的全局函数,有了这个函数,以后在调用联动菜单的时候就***方便了。

一、遇到问题描述

我们知道,联动菜单它是保存到了附加表里,我们在arclist标签中,要调用自定义附加表的字段,只能是通过:

{dede:arclist row='5' channelid='内容模型ID' addfields='自定义字段'}

insertext

{/dede:arclist}

这种方法来调用,比如以下这个实例:

{dede:arclist titlelen='60' row='8' channelid='1' addfields='nativeplace'}

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

{/dede:arclist}

这个的意思是调用普通文章8条,并调用附加表中的nativeplace字段(注意:该字段是联动类别),但是调用的结果就是枚举值,是数字,不是地区。

二、解决方法

1)函数编写

打开 /include/extend.func.php 文件(这个文件为自定义函数接口文件,若不存在,请自行创建),在***后一行的?>上添加如下代码:

保存关闭即可!

2)函数调用

这个函数的调用***简单,只需要将“枚举值”传递过来即可,这个缓存组名通常也就是内容模型中的自定义联动菜单字段名:

function Getsysenum(‘枚举值');

3)调用实例

我们来看一下调用的实例代码:

{dede:arclist titlelen='60' row='8' channelid='1' addfields='nativeplace'}

[field:nativeplace function="Getsysenum(@me)"/][field:title /]

{/dede:arclist}

其中[field:nativeplace function="Getsysenum(@me)"/] 就是将nativeplace字段进行Getsysenum函数处理。

这样就可以解决这个调用的问题了。

 

下面是自定义表单调用联动的使用方法:

织梦官方在自定义表单中把联动类型加了注释的,那么我们现在把注释删除就可以使用了,

 

找到

/dede/templets/diy_field_add.htm

 

/dede/templets/diy_field_edit.htm

 

把注释掉的联动选项给恢复。然后在自定义表单里增加字段,填写联动名,,前台就可以用了。

 

还有一个就是,这样做出来的联动前台和后台都只显示枚举值,,很烦人,我在网上找到方法,如下:

 

1.在"后台目录"\templets\diy_list.htm找到(大约在41行):

 

广告管理-720PX*80PX

  • 关注微信

猜你喜欢

微信公众号