Extra Form
PHP PHP 7.3
CMS XpressEngine

제작자님 사이트에 문의를 드렸는데 혹시 같은 문제를 겪으신 분 계신가요?

 

xe에서 배포중인 세진님의 작성 댓글 보기 모듈 ( https://xe1.xpressengine.com/index.php?mid=download&package_id=21211103 ) 이용하려고 합니다.

 

xe 최신 버젼 / php7.3 환경에서 테스트 중이고  해당 소스의 코드상의 object 를 baseobject로 수정 변경했습니다. 

 

1. 모듈 관리자 에서 추출할 모듈 대상에서 추가를 선택합니다.

2. 댓글 추출을 원하는 모듈(게시판)을 선택, 추가 합니다.

c9caec9de3e59732bd0b98e050856403.JPEG

3. 위 상태에서 등록을 누르면 아래와 같이 아무것도 없는 공백 상태가 되는 증상이 있습니다.

1.JPEG

 

4. 선택한 게시판에서 댓글은 정상적으로 가져오는데 문제는 추출할 모듈 대상 화면에서 선택한 게시판이 보이질 않아 특정 게시판을 선택해서 삭제를 할 수 가 없습니다. 

 

혹시 이 부분은 어디를 살펴봐야 할지 도움 부탁드리겠습니다.

  • profile
    7.2 인데 저도 그런것 같네요
  • profile ?
    저만 그런 줄 알았는데 아니었네요.
    확인 감사합니다.
  • profile
    저희는 지금은 썸싱모듈로 대체해서 사용하지 않아 호기심에서 한번 뭐가 문제인지 찾아보려 했는데 뭔가 이미 저장된 모듈번호를 select 안에 넣어주는 스크립트가 누락된 것 같은 생각만 했을뿐 해결은 못했습니다.

    tpl 폴더에 동봉된 js 파일이 빈파일인게 관련 있을지도 모를것 같네요.

    일단 관리자분만 사용하는 부분이니.. 모듈대상 변경하고 싶으실때는 개발자도구로 value에서 필요한 것만 지우시고 등록을 하시거나 다 지우고 새로 등록하고 하시면 될 것 같습니다.
  • profile ?

    넵 우선은 개발자도구에서 한번 시도를 해봐야 겠습니다. 감사합니다. 

     

    같은 문제가 있으신 분은 웹지기님의 답변을 참고 해 주세요.

    2019-04-13 13,17,33.JPEG

  • profile
    원인 찾았습니다.

    처음에 의심하고 테스트했던 부분인데 제가 깜빡하고 대상을 아무것도 선택을 미리 하지 않은 상태에서 테스트를 해서 전.후 비교가 안되었던 건데 변화가 없다고 착각했네요.

    config.html 파일에서

    선택된 모듈번호를 넣어주기 위한 스크립트가 있습니다.

    <!--@if(substr(__XE_VERSION__,0,3) >= '1.7')-->
    <script type="text/javascript">
    jQuery( function() { getModuleSrlList('apply_module'); } );
    </script>
    <!--@end-->


    저기서 버전 확인을 하기 위한 조건을 제거해 보세요.


    <script type="text/javascript">
    jQuery( function() { getModuleSrlList('apply_module'); } );
    </script>
  • profile profile
    substr(__XE_VERSION__,0,3)이면 XE 버전에서 맨 첫번째 세글자까지만 가져오는건데... XE 버전이 1.9일때까진 문제가 없었으나 XE 버전이 1.10을 넘기면서 첫 3글자가 1.1이 되버리는 바람에 발생하는 문제입니다.

    제대로 바꾸려면 version_compare 함수를 써서 비교하게끔 하면 됩니다.
    ex) version_compare(__XE_VERSION__, '1.7')

    1.9 버전에서 잘되다가 1.11 이상에서 오동작하는 자료는 99% 버전비교 문제로 발생하는 오동작입니다.
  • profile profile
    네. 저번에 다른자료에서 한번 확인했던 문제인데 저도 금방 잊어버렸네요. 개발자분들이 이제 버전 확인은 자리수 숫자 크기보다는 버전 비교 함수를 사용해주시면 좋겠네요.
  • profile ?
    감사합니다. 해당 조건 구문을 삭제하니 정상 작동 됩니다.