WP Discourse로 주제 게시 시 오류 발생

시몬, 안녕하세요.

저는 mycp.org라는 사이트를 운영하고 있으며, 이 사이트에서 WordPress를 마스터 SSO로 사용하고 있습니다. 디스코urs로 게시하는 것을 제외하면 모든 기능이 잘 작동하고 있습니다. 자동 게시(Autopublish)를 선택했는데, 이것이 블록 에디터와 호환되지 않는다는 것을 알게 되었습니다. 강제 게시(Force publish)를 활성화하고 게시물을 업데이트해 보았지만, 여전히 문제가 해결되지 않았습니다. 그래서 클래식 에디터를 설치했습니다. (구텐베르크와 그 모든 부가 기능들은 별로 좋아하지 않습니다.) 게시를 시도해 보았지만, 역시 실패했습니다. 강제 게시와 자동 게시를 모두 해제한 후, 에디터에서 업데이트를 게시해 보았습니다(이번에는 아무것도 변경하지 않았습니다). 이 과정에서 계속 다음과 같은 오류 메시지가 표시됩니다. “게시물 게시 중 오류가 발생했습니다. 다시 시도해 주세요.”

이 문제를 해결하거나 디버깅하는 방법에 대해 조언을 주실 수 있을까요?

감사합니다.

폴

모든 게시물에서 오류가 발생하고 있나요, 아니면 특정 게시물에서만 발생하나요?

문제가 특정 게시물에서만 발생하는 경우, 해당 게시물의 편집 화면으로 이동하여 페이지 우측 상단 근처에 있는 ‘화면 옵션’ 탭에서 '사용자 정의 필드’를 선택하세요:

이 작업을 완료한 후, 사용자 정의 필드 메타 박스로 스크롤하여 펼치세요. 이 스크린샷에 있는 필드와 일치하는 필드가 보이면, 해당 필드의 ‘삭제’ 버튼을 클릭한 후 Discourse에 게시물을 다시 게시해 보세요. wpdc_topic_tags 필드가 보인다면 이것도 삭제할 수 있습니다. 해당 필드가 문제를 일으키고 있을 수 있습니다(Discourse는 허용되지 않는 태그에 대해 이제 오류를 반환합니다) - 저는 지금 그 문제를 수정하는 작업을 진행 중입니다.

이 방법으로 해결되는지, 아니면 여전히 오류가 발생하는지 알려주세요.

시몬님,

다른 게시물로 시도해 본 지 좀 시간이 지났기 때문에, 첫 번째 질문에 대해서는 먼저 답변드리기 어렵습니다. 말씀하신 지침은 그대로 따랐습니다. 여기에 표시되지 않는 필드 하나가 더 있는데, wpdc_publishing_error입니다. 이 필드는 이번 시도(성공하지 못함) 전후로 값이 "Forbidden"으로 설정되어 있습니다.

도움이 된다면 다른 게시물로 다시 시도해서 업데이트해 볼 수 있습니다.

폴 드림

도움이 되셨다니 다행입니다! 플러그인의 연결 설정(Connection Settings) 탭에서 입력한 값들을 확인해 주시겠습니까? Discourse 사이트의 모든 사용자(All Users) API 키를 사용하고 있는지, 그리고 게시 사용자 이름(Publishing Username)이 'system’으로 설정되어 있는지 확인해 주세요. Discourse에서 시스템(System) 사용자의 사용자 이름을 수정한 경우를 제외하고는 이 값을 'system’으로 설정하지 말아야 하는 경우는 없습니다.

다음으로, WordPress 프로필 페이지로 이동하여 Discourse 사용자 이름(Discourse Username)이 Discourse의 사용자 이름과 정확히 일치하는지 확인해 주세요. Discourse 사용자 이름 필드는 WordPress 프로필 페이지의 하단 근처에 있습니다.

Wordpress에서 제 이름은 Paul_Gross입니다. Discourse 사용자 이름도 Paul_Gross입니다. Discourse의 사용자 페이지에서 "system"을 검색해 보았지만 "system"이라는 사용자를 찾을 수 없습니다.

사이트 사용자 연락처 이름은 "system"입니다.

관리자 / 사용자 / 스태프 페이지로 이동하면 목록에 'system’이라는 이름의 사용자를 볼 수 있습니다. 해당 사용자를 볼 수 없다면 삭제되었거나 이름이 변경되었을 수 있습니다.

설치되어 있습니다. 하지만 현재 WP Discourse Connection 페이지에서 "Discourse에 연결되어 있지 않습니다"라는 메시지가 표시됩니다. 이유를 모르겠네요…

그걸 고쳤는데도 계속 Forbidden 오류가 나요…

게시물을 게시하려는 사용자가 해당 Discourse 카테고리에서 주제를 게시할 권한이 있습니까? 게시물을 게시하는 사용자는 프로필 페이지에서 설정한 Discourse 사용자 이름으로 지정됩니다.

이 문제가 특정 게시물과 관련이 있는지 확인하려면 사이트에 새 게시물을 게시해 보시는 건 어떨까요?

저는 해당 사용자인 저, Paul_Gross가 WordPress에서 작성한 게시물의 관리자이자 생성자로서, 제가 정의한 Discourse 카테고리(Research)에 게시물을 게시할 권한이 있다고 생각합니다. 저는 이 식방정식의 양쪽 모두에서 관리자입니다. “forbidden”(금지됨)으로 표시되는 다른 이유는 없을까요?

참고로, 이 문제에 대해 빠르게 파고들어 주셔서 감사합니다. 지금 컴퓨터를 떠나야 해서 휴대폰으로 답변은 가능할 것 같습니다. 하지만 제대로 된 조사를 하려면 큰 화면과 키보드가 필요합니다 (제 한계입니다 – Discourse의 반응형 문제 때문이 아닙니다!).

Paul

별말씀을요. 현재 Discourse에서 반환되는 오류 메시지를 개선할 기능을 개발하고 있습니다. 단순히 "Forbidden"만 표시되면 도움이 되지 않습니다. 시간이 나시면 새로운 주제를 게시해 보시고, 결과가 어땠는지 알려주세요.

좋아요. 그렇게 하겠습니다. 결과를 다시 올릴게요…

시몬, 안녕하세요.

이게 해당되는지 모르겠지만, 내용을 새 게시물에 복사해서 게시했습니다. 하지만 커스텀 필드에서 여전히 Forbidden 오류 코드가 나옵니다…

폴

우리는 기본적으로 멀티사이트 환경에서 동일한 Discourse 포럼에 게시물을 올리는 3개의 블로그를 운영하고 있습니다. 3개 중 2개는 문제없이 정상적으로 작동하지만, 나머지 하나는 이전에 @pgross가 언급했던 것과 유사한 “Forbidden”(접근 금지) 오류를 반환합니다. 이 글에서 제시된 해결 방법들을 시도해 보았지만 효과가 없었습니다. 모든 게시물은 동일한 사용자가 작성한 것이며, 어제까지 몇 달간 정상적으로 작동했기 때문에 현재 상황이 다소 난감합니다.

Forbidden 오류가 발생하는 사이트와 다른 사이트들 사이에 어떤 차이가 있는지 찾아볼 수 있나요? 예를 들어, 오류가 발생하는 사이트에서 보호된 카테고리에 게시하고 계신가요? Discourse에 게시하는 주제에 태그를 추가하고 계신가요? 그렇다면 게시하는 카테고리에서 해당 태그가 허용되지 않을 가능성이 있나요?

WP Discourse의 “Add Featured Links(추천 링크 추가)” 옵션이 활성화되어 있나요? 해당 옵션은 Publishing(게시) 설정 탭에서 찾을 수 있습니다.

안녕하세요 @simon, 블로그 3개는 모두 동일한 블로그를 다른 언어로 작성한 것입니다. 셋 다 정확히 같은 방식으로 설정되어 있어, 제가 보기에는 차이가 없습니다. 태그를 추가한 적도 없습니다. 대신 “추천 링크 추가” 옵션은 사용하고 있습니다.

도움이 되셨으면 좋겠습니다.

수정: 새 게시물로 테스트를 해보니 정상적으로 작동했지만, 푸시가 되지 않던 특정 게시물은 여전히 Forbidden 상태입니다.

https://en-ca.wordpress.org/plugins/query-monitor/ 또는 유사한 플러그인을 설치한 후 다시 게시물을 게시해 볼 수 있나요? Discourse에서 받은 응답에 대한 상세한 오류 메시지가 표시되어야 합니다.

수정: 전체 게시물 내용을 Discourse에 게시하고 있나요, 아니면 게시물 발췌본만 게시하고 있나요?