WordPressテーマSANGOの質問

コメント欄のスレッドをこのページのように別ページにまとめて表示したい

アバター
サトゥー

コメント数が多い記事について、ページが長くなりすぎて困っています。
こちらのページのように、コメントに対して「回答を見る」のボタンを設置し、スレッドは別ページで見られるようなカスタマイズを行いたいのですが、やり方を教えていただけませんでしょうか。
よろしくお願いいたします。

SANGO
質問板アーカイブ
コメントへの回答
サルワカくん
サルワカくん
2019/03/29

遅くなりすみません。
このカスタマイズガイドのやり方はかなり複雑なので、一般化してこちらで公開するのは難しいですね…。実装するのに1日以上かかりました。
(本来はカスタマイズガイドで複雑すぎることはやりたくなかったのですが、1記事に対するコメント数が100以上になってしまっていたりしたので、仕方なく手を打ちました)

ざっくりと何をやっているかというと、
①コメントの詳細ページを作ります。方法は先日書いたこの記事などが参考になると思います。
URLパラメーターなどを駆使してコメント番号を取得し、get_comments関数でコメントデータを取得します。返信コメントに対してはページが生まれないように、色々とコントロールする必要があります。

②記事下にコメントを出力するcomments.phpを大幅に変更し、get_commentsという関数でコメントを出力するようにします。このときコメントのparentがついていないもの(=一番上の階層のコメント)だけ出力するようにします。そして、各コメントの詳細ページ①へのリンクをつけます。
という感じです…。

SEO的にもけっこうリスクがあります。titleタグをどうするか…などですね。このサイトの場合、データベースにコメントのタイトルを保存するためのカラムを用意し、過去のコメント1000件以上に対し手作業でタイトルを付与しました。
また、コメントの返信を新規でつけられた場合など、コメントごとに新しいページが生成されるため、低品質なページがたくさん生まれてしまいます。

無難なのはコメントをページ分割することだと思います。
http://s-hiasa.ddo.jp/wp/wparticle/commentneworder/

お力になれず申し訳ないですがご理解いただけますと幸いです。

アバター
サトゥー
2019/04/03

丁寧なご返信ありがとうございます。
諸々承知いたしました。ひとまずコメントページを分割して様子をみてみます。

サルワカくん
サルワカくん
2019/04/03

ご理解いただき、ありがとうございます。
お力になれず申し訳ないです。