解决DZ帖子内同一图片无法使用两次BUG

查看 1.6K
回复 0
CPO自媒体 发表于 2023-2-5 03:33 显示全部楼层

手机扫码访问此页面


关注我们微信公众号

这是一个创建于 713 天前的主题,其中的信息可能已经有所发展或是发生改变。
DZ如果上传了一个图片,你想在帖子中另一个位置引用,复制过去发现编辑器可以显示,但是发表后就不显示了

貌似08年就有这个BUG了

https://discuz.dismall.com/thread-888432-1-1.html

解决DZ帖子内同一图片无法使用两次BUG

解决DZ帖子内同一图片无法使用两次BUG


官方没有理会,有时候需要用的时候真的很烦,还要把同一个图片再上传一次~!

|   修复方式

找到 /source/function/function_attachment.php

注:记得备份

166行-169行


  

   

          
  1. foreach($findattach[$pid] as $aid => $find) {
  2.                                         $postlist[$pid]['message'] = preg_replace($find, attachinpost($postlist[$pid]['attachments'][$aid], $postlist[$pid]), $postlist[$pid]['message'], 1);
  3.                                         $postlist[$pid]['message'] = preg_replace($find, '', $postlist[$pid]['message']);
  4.                                 }

  5.    

  

  复制代码


替换为


  

   

          
  1. foreach($findattach[$pid] as $aid => $find) {
  2.                                     //$postlist[$pid]['message'] = preg_replace($find, attachinpost($postlist[$pid]['attachments'][$aid], $postlist[$pid]), $postlist[$pid]['message'], 1);
  3.                                         //$postlist[$pid]['message'] = preg_replace($find, '', $postlist[$pid]['message']);
  4.                                        
  5.                                         preg_match_all($find, $postlist[$pid]['message'], $sameattach);
  6.                                         foreach($sameattach[0] as $key => $value){
  7.                                             $tempattach = $postlist[$pid]['attachments'][$aid]['aid'];
  8.                                             if(count($sameattach[0]) > 1 && $key > 0) {
  9.                                                 $postlist[$pid]['attachments'][$aid]['aid'] = $postlist[$pid]['attachments'][$aid]['aid'].'_'.$key;
  10.                                                 $GLOBALS['aimgs'][$pid][] = $postlist[$pid]['attachments'][$aid]['aid'];
  11.                                                 
  12.                                             }
  13.                                             $postlist[$pid]['message'] = preg_replace($find, attachinpost($postlist[$pid]['attachments'][$aid], $postlist[$pid]), $postlist[$pid]['message'], 1);
  14.                                             $postlist[$pid]['attachments'][$aid]['aid'] = $tempattach;
  15.                                             
  16.                                         }
  17.                                     
  18.                                 }

  19.    

  

  复制代码
相关帖子
精彩回复
还没有人回复此帖!

您需要登录后才可以回帖

登录

Or

上一页 在线咨询 快速回复 返回列表