コメントのuser_idが0だった 未分類 2025.03.15 ↬ishii00141.stars.ne.jp/20250313-2219-1830/ コメント欄のアイコンが「ミステリーパーソン」のままで変わらない問題で、データベースのwp_commentsを確認してみたら、該当コメントのuser_idが0だった。正しくは2である。それを修正したらコメント欄のアイコンが正常に表示された。 ただ、どうして0になっていたかは分からない。 それでも、コメントのuser_idが正しければ、コメント欄のアイコンが正しく表示されることは分かった。
コメント
該当のコメント(c=10,p=2777)のpost_authorは2で正しい。wp_postsテーブルにアイコン情報は無く、post_contentにもない。
wp_commentmetaテーブルのcomment_id=10のavatar_urlが次のGravatarアイコンのURLになっていた。(https:の後の半角スペースは実際にはない)
https: //secure.gravatar.com/avatar/0f59685a378fe7f3b9c22ada30ca3408?s=120&d=mm&r=g
実際にはuser_idで取得したアイコンが表示されているが、とりあえず、空欄にしておくことにした。
wp_commentsテーブルのcomment_ID=10にはcomment_post_IDもあって、2686とコメントした記事のIDが記載されている。
「連携された返信」に対する「連携された返信」では、このcomment_post_IDがないかもしれない。要確認。
そもそも、「連携された返信」に対する「連携された返信」はwp_commentsテーブルにない!
念のため、wp_commentmetaテーブルのcomment_id=10のavatar_urlに次のURLを入れておいた。(https:の後の半角スペースは省いて入力)
https: //hitorinezumi.cloudfree.jp/wp/wp-content/uploads/ishii-icon.png
実際には参照することはないと思うが、class-activitypub.php のコードで参照するようになっていたから。
wp_commentsテーブルのcomment_id=10のcomment_author、comment_author_email、comment_author_urlが古いままだったので新しくしておいた。
また、今日のコメント、comment_id=11のcomment_author_urlがユーザーのものではなくサイトのURLになっていたので修正するとともに、原因を探って、直しておく。
comment_id=11のcomment_author_urlがユーザーのものではなくサイトのURLになっていた原因は、プロフィールの設定ページの「サイト」のURLが使われたのだと思われ、それを修正して投稿したら、ユーザーのURLが反映された。
プロフィールページには「プロフィールページURL」もあるが、そのURLは反映されなかった。その欄の説明には次のように書いてある。
「プロフィール情報が入力してあるページURLを入力してください。プロフィール名のリンクがプロフィールページに変更されます。未入力の場合は、著者のアーカイブページにリンクされます。」
これはその通りで、サイドバーにあるプロフィールのリンクは、「プロフィールページURL」のもの。しかし、コメント欄のリンクは、「サイト」に記載されたものだった。
コメント欄からコメントしてもアイコンは正常
コメント欄からコメントを書いた場合、アイコンはユーザーIDで選択するのか確認するためにテストしたら、Gravatarのアイコンではなく、プロフィールの設定からアップロードした「プロフィール画像」になった。
#Cocoon #WordPress
https://ishii00141.stars.ne.jp/20250315-2220-1869/