지금 제가 발견한건 해시태그애드온이 IE11에서 동작하지 않구요.

 

또 후원도우미애드온( @CONORY 님 유료자료) 의 경우 회원정보의 계좌정보 출력이 이상한 현상이 있습니다.

이 애드온은 현재 문의중 이구요.

 

해시태그애드온으로 문서에서 태그출력 이상없으신가요?

저는 두개 사이트에서 모두 그런 현상이 있네요. 

 

후원도우미 계좌 안나온다는 제보로 알게 되었는데요. 제보자 분중 랜덤하게 발생하는 분이 있고 저는 계속 그러네요.

저도 랜덤하게 발생을 하네요. 해시태그 애드온 제대로 보여주지 못하는 것이나 후원도우미 계좌 안내를 제대로 못하는 문제가요.

  • Lv36

    글자가 안 나오고 ]>]> 이런 특수문자만 나오는 현상 말씀이시죠?

     

    최근 IE11에서 이런 현상이 종종 제보되고 있습니다. XE 최신버전뿐 아니라 아주 옛날 버전으로 만들어진 사이트도 마찬가지예요. XE에서 오래 전부터 사용하던 XML CDATA 인코딩 방식이 <html> 등 특정 태그와 함께 사용되었을 때 IE11에서 문제를 일으키는 것으로 보입니다. (라이믹스는 XML을 많이 걷어냈기 때문에 괜찮습니다.)

     

    코어 쪽의 패치는 여기에 있습니다만

    https://github.com/xpressengine/xe-core/pull/2042

    서드파티 자료에서 임의로 XML을 생성하여 출력한다면 일일이 수정해야 할 수도 있습니다.

     

    문제의 계좌번호 로딩 요청을 보면

     

    <response>
    <error>0</error>
    <message>success</message>
    <type>bank</type>
    <html><![CDATA[<h3>후원계좌</h3><p>[KB국민] 000000-00-000000</p>]]></html>
    </response>

     

    이런 식으로 <html> 태그에만 CDATA가 들어 있는 것으로 보아 코어의 XMLDisplayHandler를 거치지 않고 애드온에서 직접 작성한 XML인 것 같네요. 이런 경우에는 코어를 패치해도 도움이 되지 않기 때문에 애드온을 수정해 주어야 합니다.

     

    XE = XML Everything! ㅜㅜ

     

    서드파티 자료 개발자 여러분... exec_xml 쓰지 맙시다... exec_json이 섭섭해해요...

  • Lv36 Lv30

    일단 후원도우미애드온은 제작자분께 요청을 드린 상태인데요.
    그럼 해시태그애드온의 경우 어떻게 수정을 하면 될까요 ???

    https://xe1.xpressengine.com/index.php?mid=download&package_id=22753681

     

    이 애드온의 JS 중 일부를 제가 

     

     

    content = content.replace(/(?:^:|^|\s|>|&nbsp;)(#([\w|ㄱ-ㅎ|ㅏ-ㅣ|가-힣\-]+)){1,}/g, function(match) {
                    return match.replace(/#([\w|ㄱ-ㅎ|ㅏ-ㅣ|가-힣\-]+)/g, function(m, p1) {
                        return newval+encodeURIComponent(p1)+'" '+(opts[3]?'target="_blank" ':'')+'style="color:'+opts[2]+';padding:1px 3px;border:1px solid #0000FF;border-radius:8px;text-decoration:none;" class="hashtag">#'+p1+'</a>';
                    });
                });

     

    클래스명을 부여하기 위해 붉은색을 추가했는데 이게 문제가 되지는 않는거죠 ?

     

     

    *일단 코어를 수정하면 된다고 하시는 것 같아 코어 수정을 했습니다.

  • Lv36 Lv30
    코어패치로는 애드온 문제는 해결이 안되는 거군요 ㅡㅡ;
  • Lv30 Lv36
    IE11에서 접속해 봤을 때 해시태그와 관련해서는 별다른 문제를 확인하지 못했습니다. 단지 클래스를 추가한 것 뿐이라면 다른 애드온에서 사용하는 클래스와 중복되지만 않는다면 문제가 생길 것 같지는 않네요.
  • Lv36 Lv30
    랜덤하게 해시태그로 변환 되었다가 아닌 그냥 단순 텍스트로 보여졌다 하네요. 애드온 동작이 되었다 안되었다 하는 증상이요. 후원계좌 보여주는 것도 그렇게 되었다 안되었다 그래요.
    또 경우에 따라서 ie11이라도 해시태그는 또 잘 보이는 경우도 있는 듯 해요. 제가 가진 ie11은 문제가 있네요.
  • Lv36 Lv30
    후원도우미는
    $result .= "\r\n<html><![CDATA[$html]]></html>";
    부분을

    $result .= "\r\n<html>" . htmlspecialchars($html, ENT_COMPAT, 'UTF-8', true) . "</html>";

    이런식으로 답변 주셔서 적용했더니 해결이 되는 듯 합니다.
  • Lv30 Lv36
    방금 증상을 확인했습니다. 마치 애드온이 아예 작동하지 않은 것 같은 모습이네요. 그런데 애드온 작동을 방해할 만한 스크립트 에러가 보이는 것도 아닙니다. 이상하네요...

    혹시 글읽기 화면에 전체화면 캐시를 적용하지 않으면 괜찮은가요? 캐시 문제일 가능성부터 배제하면 도움이 되겠습니다.
  • Lv36 Lv30
    로그인 상태에서도 동일해요서 전체화면 문제는 아닐거라 생각했는데요. 제가 잠시 게시판 1개를 제외해보고 테스트해볼게요.
  • Lv36 Lv30
    전체화면캐시와는 무관하게 랜덤하게 발생을 해요. 어떨때는 정상 어떨때는 애드온이 없는 듯한.... 일단 보호소후원게시판만 문제해결 실마리가 보일때까지 전체화면캐시는 제외해 놓겠습니다.
  • Lv30
    이렇게 바꾸니 해결은 되는듯 한데 추가로 발생하는 문제가 IE를 제외한 모든 곳에서 <h3> <p> 태그가 그냥 텍스트로 노출되네요 @CONORY