애드온 개발자분께서 바쁘신지 처리가 안되고 있어 도움을 요청드립니다.

 

https://github.com/wincomi/xe-to-sns/issues/4

 

애드온 특성상 글을 수정할때 마다 같은 글이 트위터로 계속 발행되면 안되는 상황인데 글 수정시 고려가 안되어 있는데요.

제 능력으로는 고쳐보려고 해도 XE특성상 글 수정과 새글작성 구분이 쉽지많은 않은 구조로 되어 있는 듯 합니다.

 

능력자분들 고쳐주시면 애드온 이용자들에게 큰 도움이 될 것 같습니다.

 

  • ?
    새로운 0.2.2 버전 쓰시는 건가요? 저도 예전 버전에 같은 문제가 있었는데 윈컴이님이 0.2.2 버전으로 업데이트해주시면서 이 문제를 고치신거 같습니다. 저는 새 버전으로 업데이트하니까 더이상 이 문제가 없습니다.

    버전 확인해보시고 https://xe1.xpressengine.com/index.php?mid=download&package_id=21933112 여기서 다운받으셔서 다시 설정해 보세요.
  • ? profile
    이 버전에서는 해당 문제를 고친 적이 없습니다. 제가 이슈 깃허브에 이슈를 등록한 것도 0.2.2 버전에서의 문제로 등록한 것이고 개발자분도 이슈를 확인하고 문제를 확인한 상황입니다.

    작성한지 얼마 안된 글을 수정했을때 발행이 안되는 것은 아마 트위터에서 자체적으로 막는 것 인듯 하구요. 일정 시간 지난 게시글을 수정하면 다시 트위터로 같은 글이 등록됩니다.

    애드온 자체에서는 글 수정시 고려는 안되어 있습니다.
  • profile
    보통 Context::get('document_srl')이 수정시에는 있고, 새 글 작성시에는 없지 않나요?
    해당값이 있으면 return 처리하면 될 것 같은데...
  • profile profile
    그거가 업로드 있는 문서 발행을 막아버려서요 ㅜㅡ
  • ?
    저도 같은 문제가 있어서 이 애드온 안쓰다가 몇달전에 업데이트 해주신 0.2.2 버전 다시 쓰면서 제가 뭔가를 고친건지, 기억으론 업데이트만 하고 됐던거 같은데.. 몇달이 지나서 이제 기억이 않나네요.. ㅠㅠ
  • ? profile
    애드온에서 처리해 주는 것이 아닐겁니다. 오래된 글을 수정해서 다시 등록해 보세요.
  • ? profile
    해당버전에서 고쳐진건 아래 내역입니다.
    #1 코드 정리
    #2 애드온 설정이 없을 때 return 문제
    #3 첨부파일이 있는 글의 정보를 가져올 수 없는 문제
  • profile

    act값이나 그 밖에 특정 변수를 사용해서 쌈박하게 구분할 수 있으면 편리할 텐데

    작성과 수정에 동일한 act를 사용하는 바람에 여러 사람 고생하죠...

     

    $document_srl = Context::get('document_srl');

    $oDocumentModel = getModel('document');

    $oDocument = $oDocumentModel->getDocument($document_srl);

    if($oDocument->isExists() && $oDocument->get('status') !== 'TEMP')

    {

        // 수정

    }

    else

    {

        // 신규작성

    }

     

    심지어 코어에서도 이 구분이 제대로 되지 않아서

    파일을 첨부한 글의 목록 순서가 꼬이거나 하는 부작용이 발생하곤 합니다.

    (라이믹스는 괜찮아요 ㅋㅋ)

  • profile profile
    오. 감사합니다. 시도해보겠습니다!
  • profile profile

    근데 새글에서 첨부를 할경우도 새글로 인식이 되는건가요?

     

    $oDocument->get('status') !== 'TEMP'

     

    요게 핵심이었군요. 새글에서 파일첨부시 문서번호가 할당되지만 상태가 아직은 임시!

  • profile profile
    네, 문서번호가 할당되어 있고 상태가 임시가 아닌 경우에만 수정으로 취급하시면 됩니다.
  • profile profile
    오오, 저도 배우고 갑니다 ^^/
  • ?
    안녕하세요. 저 이슈가 한 달이 넘었네요. ㅠㅠ
    댓글 참고하여 수정하도록 하겠습니다!
  • ? profile
    저희는 애드온 상단에 위 내용으로 리턴 처리햇더니 잘 되네요.
  • ? profile
    저도 잘 쓰고 있어요! 기다리겠습니당!
  • ?
    늦었지만 남겨주신 2개의 이슈를 해결하여 업데이트하였습니다 :) 문제가 있으시면 다시 이슈남겨주시면 감사하겠습니다!
    https://xe1.xpressengine.com/index.php?mid=download&package_id=21933112
    @웹지기 @이브이
  • ? profile
    감사합니다~
  • ? profile
    우왓 지금 확인했어요 감사합니다!!!!!
  • ? profile

    제가 이슈를 어떻게 남기는지 몰라서 댓글로 남깁니다. 새로운 자료를 받아서 덮어씌우기 했더니 홈페이지가 백지화가 되서 기존 폴더를 아예 삭제하고 다시 새로운 자료를 업로드했거든요. 그래도 똑같은 현상(백지)이 반복되어서 기존 자료로 재업로드했습니다. 그러니까 또 잘되네요. 왜 안됐는지 원인은 모르겠어요. 참고로 xe 사용중이고 아직 1.8.43 버전입니다.

  • profile profile
    https://github.com/wincomi/xe-to-sns/issues
  • profile ?
    지금이라도 잘 되면 괜찮지 않을까 싶습니다 ^^;
  • ? profile
    저는 아직 업데이트 전이라 모르겠지만 잘 안되서 이전 버전으로 설치하셨다는 댓글 같아보입니다.
  • profile ?
    아, 제가 댓글을 잘못 이해했네요. 한번 확인해보겠습니다 @이브이
  • ? profile
    넵! 감사합니다 급한거 아니니까 천천히 해결해주셔도 돼요. 저만 그런걸수도 있고요
  • profile ?
    안녕하세요. 새로운 버전(v0.2.4)을 배포했습니다. 정상적으로 작동이 되는지 궁금합니다.
  • ? profile
    헙 감사합니다~! 조금 있다가 확인해보겠습니다. ^0^
  • ? profile

    방금 설치 후 확인해 보았습니다.
    사이트에 올렸던 며칠 전 글을 수정해보았는데 sns에 글이 복사되지 않더군요!
    근데 사이트에 새로 글을 써도 sns에 등록되지 않았습니다~ㅠㅠ

  • profile ?
    다시 한번 확인해보겠습니다. 요즘 실수를 많이 하네요 ㅜㅜ
  • ? profile
    아닙니다 아닙니다~ 지금도 너무 잘 쓰고 있어요 ^0^ 항상 감사하고 있습니다. 너무 무리하지 마세요
  • profile ?
    안녕하세요. 벌써 11월이네요.
    늦었지만 말씀하신 문제를 수정했습니다. 혹시 확인해보시겠어요?
    https://xe1.xpressengine.com/index.php?mid=download&package_id=21933112
  • ? profile
    확인해보았는데 ㅠㅠ 저번과 같네요. (새로운 글도 등록이 안되는 문제 ㅠㅠ) 혹시 저만의 문제일수 있으니 @웹지기 님도 테스트를 한번 해주셨음 해요.
  • profile ?
    아이고, 그런가요. 이번에는 직접 테스트를 하고 올렸는데 다른 환경에선 문제가 생기나보군요 ㅠㅠ

    https://github.com/wincomi/xe-to-sns/blob/master/to_sns.addon.php
    이 파일에서
    if($oDocument->isExists() && $oDocument->get('status') !== 'TEMP') {
    return;
    }
    일단 이 부부분을 제거하고 사용해주세요. 수정한 글은 작동하지 않도록 하는 코드인데요. 새로운 글 쓰기일 때도 이 조건이 걸리는 것 같습니다. 이 코드를 삭제하면 수정할 때도 작동이 될텐데 만약 이 코드를 삭제해도 작동되지 않는다면 트위터 API 설정을 한번 확인해보시면 감사하겠습니다.
  • ? profile

    저는 실사용 사이트라 테스트를 해드리긴 어려운데요.(제가 수정해서 지금 정상동작 하고 있어서요..)

    $document_srl = Context::get('document_srl');
    $oDocumentModel = getModel('document');
    $oDocument = $oDocumentModel->getDocument($document_srl);
    if($oDocument->isExists() && $oDocument->get('status') !== 'TEMP') return;


    저희는 이렇게 그냥 아예 위쪽에서 리턴 시키고 있습니다.
    반영된 코드와 다른점은 저흰 $document_srl = Context::get('document_srl'); 이렇게 사용한 부분이 있습니다.

  • profile ?
    $this->get("document_srl") 대신 Context를 사용하셨나요? 무엇이 다른지 정확히 모르겠지만 이렇게 바꿔서 확인해보겠습니다.
  • profile ?
    웹지기님의 댓글처럼
    $document_srl = $this->get("document_srl");

    $document_srl = Context::get('document_srl');
    로 한번 바꾸고 테스트해보시겠어요?

    그리고 혹시 환경이 XE인지 라이믹스인지 궁금합니다!
  • ? profile
    저는 처음부터 업데이트 해주신 것을 적용하지 않았습니다. 문제가 있다고 해서요.
    위에 @기진곰이 알려주신 것이 있어서 저는 그대로 적용해서 사용하고 있는 것 이구요.
  • ? profile
    네 저는 xe입니다! 이따 집에 확인해보고 다시 댓글 남길게요 항상 감사합니다
  • profile ?
    감사합니다!
  • profile ?
    제가 라이믹스에서 테스트해서 XE 코어에서는 제대로 작동하지 않을 수도 있겠네요. 감사합니다.