muban大师 发表于 2019-7-26 13:11:19

织梦标签array runphp静态生成乱码BUG解决方法

在织梦的大括号标签判断中,name=array runphp 生成静态时,会出现只获取一个字节的BUG,如
       
        {dede:field name=array runphp=yes}@me = (@me['seotitle', != '' ? "{@me['seotitle',}":"{@me['title',}");{/dede:field}
       
        生成静态,栏目列表页第二页时出现中文乱码,因为它只输出一个字节
       
       
        这是官方程序的一个BUG
       
        解决方法
        打开 /include/dedetag.class.php 找到 大概在 680 行
       
        $phpcode = preg_replace("/'@me'|\"@me\"|@me/i", '$DedeMeValue', $phpcode);
       
        改成
       
        if(is_array($this->CTags[$i,->TagValue))
        {
        $phpcode = preg_replace("/'@me'|\"@me\"|@me/i", '$DedeMeValue', $phpcode);
        }
       
        完成
页: [1]
查看完整版本: 织梦标签array runphp静态生成乱码BUG解决方法