青岛做网站
        行业新闻
行业新闻
当前位置:首页> 新闻动态 > 行业新闻

Dedecms 织梦地区联动无法显示和联动菜单搜索

更新时间:2017-05-25
   笔者最近使用织梦dedecms分类信息中的地区联动以及新添加了联动属性,在使用的过程中出现了地区联动无法显示,已经在前台做信息搜索时自己新添加的联动属性无法调用。经过笔者的努力最好终于解决,希望对遇到类似问题的朋友有所帮助。

第一:织梦dedecms分类信息中地区联动无法显示解决方法

   这个问题的出现,一般都是因为我们对织梦一些敏感文件路径进行了修改,比如data文件。程序开始是在跟目录下,笔者为了安全起见,把data文件夹放在了mysuju文件夹下,这样就导致调用地区级联出现了错误,修改方法如下:

修改include/customfields.func.php

60行找到 src=’{$cmspath}data/enums/{$fieldname}.js’

改成 src=’{$cmspath}mysuju/data/enums/{$fieldname}.js’

425行找到 src=’{$cmspath}data/enums/{$fieldname}.js’

改成src=’{$cmspath}mysuju/data/enums/{$fieldname}.js’

第二:织梦dedecms分类信息在搜索时如何添加自定义级联属性

笔者在使用分类信息时添加了新的级联属性,比如笔者添加了如下属性

Dedecms 织梦地区联动无法显示和联动菜单搜索

从图中可以看出,品牌是联动菜单,而型号是品牌的联动,级别是自定义表单中的option下拉菜单.怎样实现让它能正常的按照功能显示呢?

织梦官方在 list_infos.htm里给的是

{dede:infoguide}

    <form name=’infoguide’ method=’get’ action=’/plus/list.php’>

    [field:nativeplace /]

    [field:infotype /]

    <input type=’hidden’ name=’tid’ value=’[field:typeid /]’ />

    <input type=’hidden’ name=’channelid’ value=’-8’ />

    <span class=’infosearchtxt’>关键字:</span><span><input type=’text’ name=’keyword’ value=’’ class="ipt-txt" /></span>

    <input type=’submit’ value=’搜索信息’ class="btn-2" style=’cursor:pointer’ />

    &nbsp;

    <input type=’button’ value=’发布信息’ class="btn-2"

    onclick="location=’/member/archives_sg_add.php?channelid=-8’;" style=’cursor:pointer’ />

    </form>

{/dede:infoguide}

 文件:

\include\taglib\infoguide.lib.php

function lib_infoguide(&$ctag,&$refObj)

默认底层模板:

info_guide.htm

参数:

底层字段:

nativeplace,infotype,typeid

范例:

可以查看分类信息页面模板list_info.htm文件。

所以,这个文件对应调用的php处理文件是 include/taglib/infoguide.lib.php

修改这个文件,说白了就是修改 lib_infoguide 这个 function ,加入你需要搜索筛选的 联动类别名

在第26

global $dsql,$nativeplace,$infotype,$hasSetEnumJs,$cfg_cmspath,$cfg_mainsite;

//修改为

global $dsql,$nativeplace,$infotype,$hasSetEnumJs,$cfg_cmspath,$cfg_mainsite,$pinpai;

57

$fields = array(’nativeplace’=>’’,’infotype’=>’’,’typeid’=>$typeid);

//修改为

$fields = array(’nativeplace’=>’’,’infotype’=>’’,’pinpai’=>’’,’typeid’=>$typeid);

65

$fields[’nativeplace’] = $fields[’infotype’] = ’’;

//修改为

$fields[’nativeplace’] = $fields[’infotype’] = $fields[’pinpai’] =’’;

68

if(empty($nativeplace)) $nativeplace = 0;

if(empty($infotype)) $infotype = 0;

//下边加入一个if判断

if(empty($pinpai)) $pinpai = 0;

80行下边加入一下代码

$fields[’pinpai’] .= "<input type=’hidden’ id=’hidden_pinpai’ name=’pinpai value=’{$pinpai}’ />\r\n";

$fields[’pinpai’] .= "<span class=’infosearchtxt’>品牌:</span><span id=’span_pinpai’></span>\r\n";

$fields[’pinpai’] .= "<span id=’span_pinpai_son’></span><span id=’span_pinpai_sec’></span><br />\r\n";

$fields[’pinpai’] .= "<script language=’javascript’ type=’text/javascript’ src=’{$cfg_mainsite}{$cmspath}flash/data/enums/infotype.js’></script>\r\n";

$fields[’pinpai’] .= ’<script language="javascript">MakeTopSelect("pinpai", ’.$pinpai.’);</script>’."\r\n";

保存即可。

然后在需要的模板中调入一下代码即可

{dede:infoguide}

<form name=’searchcar’ id="searchcar">

[field:pinpai /]

关键字:<>input type=’text’ name=’keyword’ class="ser" value="" /><br/>

<input type=’submit’style=’cursor:pointer’ value="" id="seaech-button"/>

</form>

{/dede:infoguide}

 

 

免责声明:本站所有资讯内容搜集整理于互联网或者网友提供,并不代表本网赞同其观点,仅供学习与交流使用,如果不小心侵犯到你的权益,如果你对文章内容、图片和版权等问题存在异议,请及时联系我们删除该信息。