WordPressのポッドキャストサイト our podcast WordPress site でDiscourseコミュニティに接続するためにWP Discourseプラグインを使用しており、満足していました。しかし、最近のプラグインアップデートの後、しばらくDiscourseのディスカッションが表示されなくなりました。
間違っているかもしれませんが、テンプレートに組み込むにはサイトエディター(?)経由で行うようになったようです。変更を検討するかもしれませんが、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; ?>
レイアウトはそれほど洗練されていませんが、今のところ機能しています。例えば、最新のエピソードの下部をご覧ください。