织梦dedecms联动类型地区联动及省份-市级-地区分开+高亮

织梦dedecms联动类型地区联动及省份-市级-地区分开+高亮

织梦dedecms联动类型地区联动及省份-市级-地区分开+高亮

1.修复官方联动地区后台编辑文档时三级地区无法显示问题;

2.修复前台联动地区在选择二级和三级时数据空白问题;

3.省市区分开调用

 

1、后台-系统-SQL命令行工具,执行一下这个语句

ALTER TABLE dede_addoninfos CHANGE nativeplace nativeplace CHAR( 20 ) NOT NULL DEFAULT '0'

注意:dede_addoninfos 是你的附加表名,如下图

 织梦dedecms联动类型地区联动及省份-市级-地区分开+高亮

2、下载下面打包文件,覆盖进对应的目录,覆盖之前请做好备份!

\images\enums.js

\include\arc.sglistview.class.php

\include\taglib\infolink.lib.php

文件打包下载(gbk + utf8)

云盘下载  链接:https://pan.baidu.com/s/11gBHmlePMZO2scQEirpiUQ   提取码:2rxr 

3、覆盖文件后需要清空浏览器临时文件,刷新后台,重新编辑和添加文档,保存。

4、省市区分开调用标签

{dede:infolink}
<p>
    <b>省份:</b>[field:linkallplace/]
</p>
<p>
    <b>市级:</b>[field:nativeplace /]
</p>
<p>
    <b>地区:</b>[field:county /]
</p>
{/dede:infolink}

 

 

以上是5.7版本,下面是其他的版本处理方法

 

后台 信息类型 后面出现乱码
/templets/system/custom_fields_admin.htm

修改文件的编码

后台三级分类不显示
/include/customfields.func.php
$myformItem .= "<span id='span_{$fieldname}_son'></span>\r\n";
下面增加
$myformItem .= "<span id='span_{$fieldname}_sec'></span>\r\n";

 

 

搜索 else if($dtype=='stepselect')

else if($dtype=='stepselect')
    {   
        return  trim($dvalue);
    }

替换为

else if($dtype=='stepselect')
    {   $dvalue = trim(preg_replace("#[^0-9\.]#", "", $dvalue));
        return $dvalue;
    }

 

 

处理dedecms设置为封面后,处理

1、出现不能选改栏目

/inc/inc_catalog_options.php
大约69行
搜索
if($row->ispart==0 &&(!empty($channeltype) && $row->channeltype==$channeltype) )
替换为
if((!empty($channeltype) && $row->channeltype==$channeltype) )

 

2、提示不能在该栏目下发布 处理

archives_sg_add archives_sg_edit

if(!CheckChannel($typeid,$channelid) )
	{
		ShowMsg("你所选择的栏目与当前模型不相符,请选择白色的选项!","-1");
		exit();
	}

注释

 

在地区上的显示处理

/include/taglib/channel/stepselect.lib.php

return  $GLOBALS['em_'.$egroup.'s'][$erevalue].' -- '.$GLOBALS['em_'.$egroup.'s'][$evalue];

替换为

return $GLOBALS['em_'.$egroup.'s'][$evalue];

 

在地区上,后面增加文字  /include/taglib/infolink.lib.php 

 

修改dede后台更新地区更新枚举缓存方式:
1、修改文件 地址/include/enums.func.php
大约 39行
fwrite($fp,"\$em_{$egroup}s[{$nrow['evalue']}] = '{$nrow['ename']}';\r\n");
替换为
fwrite($fp,"\$em_{$egroup}s['{$nrow['evalue']}'] = '{$nrow['ename']}';\r\n");

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章