테마가 사이트 편집기를 지원하지 않는 WP Discourse

저희 팟캐스트 WordPress 사이트(https://podcast.oeglobal.org/)에서 WP Discourse 플러그인을 사용해 Discourse 커뮤니티와 연결하는 데 만족하며 사용해 왔습니다. 하지만 최근 플러그인 업데이트 이후로 Discourse 토론이 보이지 않게 되었습니다.

틀린 것일 수도 있지만, 이제 템플릿에 추가하는 방식이 Full site Editor를 통해 이루어지는 것 같습니다(?). 테마를 변경할 수도 있겠지만, 현재 사용 중인 Anders Noren Garfunkle 테마에 매우 만족하고 있습니다. 이 테마의 단일 게시물 템플릿은 위젯 영역 밖, 게시물 하단에 탭형 디스플레이로 댓글을 표시하는 레이아웃을 갖추고 있습니다.

모든 게시물에 수동으로 Discourse 블록을 추가하는 것도 고려해 보았지만, 지금은 HTML 코드를 사용하여 Discourse 토론을 삽입하도록 조정했습니다. 자식 테마에서 표준 WordPress 댓글 템플릿을 주석 처리했습니다(저희는 Discord를 통한 댓글만 허용하므로), 그리고 게시물 메타데이터에서 discourse ID를 확인합니다.

<?php //comments_template( '', true ); ?>

<?php
	$discourse_topic_id = get_post_meta( $post->ID, 'discourse_topic_id', 1 ); ?>
	
	<?php if ($discourse_topic_id) : ?>
	
		<div id="discourse-comments"></div>

			<script type="text/javascript">
			  DiscourseEmbed = { discourseUrl: 'https://connect.oeglobal.org/',
								 topicId: '<?php echo $discourse_topic_id?>' };
			
			  (function() {
				var d = document.createElement('script'); d.type = 'text/javascript'; d.async = true;
				d.src = DiscourseEmbed.discourseUrl + 'javascripts/embed.js';
				(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(d);
			  })();
			</script>
	
<?php endif; ?>

레이아웃이 그렇게 화려하지는 않지만, 지금은 잘 작동하고 있습니다 – 예를 들어 최신 에피소드 하단을 참고해 보세요.

@cogdog님, 플러그인을 어떻게 활용하고 계신지 들을 수 있어 기쁩니다. 블록을 사용한다고 하셨는데, WP Discourse Comment 블록을 사용해 보셨나요?

네, FSE(풀 사이트 편집) 테마를 사용하는 다른 사이트에서는 WP Discourse Comment Block을 템플릿에 삽입하여 사용하고 있습니다.

제 문제는 제 블로그의 Garfunkel 테마가 이를 지원하지 않고, 댓글 영역이 템플릿에 하드코딩되어 있다는 점입니다. 저는 블록 테마 개발에 대해 완전히 숙련된 상태가 아닙니다. 템플릿을 통해 PHP로 블록을 삽입할 수 있을까요? Testing and Feedback for using block based template parts in classic themes – Make WordPress Themes 와 같은 자료를 보고 있지만, 기존 블록을 어떻게 통합해야 할지 정확히 모르겠습니다.

제대로 된 다른 방법이라면 모든 게시물의 하단에 WP Discourse Comment Block을 추가하는 것뿐인데, 현재 사이트에는 이미 88개의 게시물이 있습니다.

좋아요, 잠시 돌아가서 다시 문제를 살펴보겠습니다.

혹시 다음을 말씀하시는 건가요?

  1. WP Discourse 플러그인만 업데이트했고(다른 것, 즉 WordPress, 테마 또는 다른 플러그인은 업데이트하지 않음).
  2. 댓글 동기화가 작동하지 않게 되었습니다.

이런 상황이 맞나요?