「ログインして返信する」と「Reply on the Fediverse」

改めて、いろいろな環境で確認しなければだめだと思った。

普段はここのサイトでいろいろと試しているのだが、ログインしっぱなしで、ログインしてない環境での確認はほとんどない。通常のコメントボタンを押した時に表示される注意書きに関しては、プラグイン「Friends」をインストールした際にできた固定ページに誘導するように、次のコードで書き換えた。

//ログインしてない場合にコメントブロックに表示される注意
function my_custom_comment_form_defaults( $defaults ) {
	if ( ! is_user_logged_in() ) {
		$defaults['must_log_in'] = 'コメントはFediverseのリプライに限っています。<a href="/friends/">参照</a>';
	}
		return $defaults;
}
add_filter( 'comment_form_defaults', 'my_custom_comment_form_defaults' );

ただ、常にこれが表示されるわけではないことが分かった。それは、コメントに対する「連合で返信」や「返信」である。

ログインしている場合は「連合で返信」とか「返信」とか表示されてた。しかし、ログインしてないと違った。

「ログインして返信する」になっている。これを見たのは初めてだった。そして、クリックするとログインページになる。それでは困る。これも固定ページに誘導するようにしないといけない。

さらに、別のWordPressサイトではどうなるか確認してみた。あちらはログインしなくてもコメントできる。しかし、こちらとは違った。

「連合で返信」ではなく「Reply on the Fediverse」になっていて、ボタンも表示されてないし、クリックしたら、英語の訳の分からないポップアップ。これでは返信しにくい。

また悩みの種が増えた。

未分類
管理人のマストドンアカウントへのリンクなど

コメント

  1. ishii ishii より:

    「Reply on the Fediverse」に関しては「連携された返信」がコメント欄に表示されている場合で、コメント欄からの返信に対しては、通常の「返信」が表示される。これは以前にゲストでコメントする際に試した。
    コメント欄に表示された「連携された返信」に返信する際に「Reply on the Fediverse」になるということは、もしかしたら、別のアカウントからの返信があった場合も同様かもしれない。自分しかコメントしてなかったので気づかなかったが、そうだとしたら不便。何とかしなければ…。

    • ishii ishii より:

      要するに、「連携された返信」や他のアカウントからの返信に対して返信する際は #Fediverse のアカウントを持ってないと返信できない。
      それはそれで良いのかもしれないが、普通にWordPressのコメントで返信しようとした人は戸惑うかもしれない。

  2. ishii ishii より:

    バグ報告されてた。

    "Today I noticed a small bug in the display of comments, but only when I'm offline.
    Here's what it normally looks like (account logged in):
    "
    Small display bug in comments · Issue #1505 · Automattic/wordpress-activitypub
    https://github.com/Automattic/wordpress-activitypub/issues/1505

  3. ishii ishii より:

    「ログインして返信する」に関しては、追加CSSに次のコードを追加した。

    /*「ログインして返信する」を非表示に*/
    .comment-reply-login {
      display:none;
    }
    .comment-body {
      border: 2px solid #eee;
      padding:2px 10px;
    }
    /*「ログインして返信する」を非表示に*/

  4. ishii ishii より:

    「Reply on the Fediverse」をクリックして現れるウインドウの文字の日本語訳のようなファイルがあった。
    /wp-content/languages/plugins/activitypub-ja-de1551be109cafae37c0263881b1eb6b.json
    のUTF-8の部分だけ #Gemini にデコードしてもらって、整形してもらった。この翻訳ファイルが機能していないのはどうしてだろう?

    ```json
    {
      "translation-revision-date": "2025-03-27 10:54:07+0000",
      "generator": "GlotPress\/4.0.1",
      "domain": "messages",
      "locale_data": {
        "messages": {
          "": {
            "domain": "messages",
            "plural-forms": "nplurals=1; plural=0;",
            "lang": "ja_JP"
          },
          "Submit profile": [
            "プロフィールを送信"
          ],
          "Enter your ActivityPub profile": [
            "ActivityPub プロフィールを入力"
          ],
          "Copy handle to clipboard": [
            "ハンドルをクリップボードにコピー"
          ],
          "Delete Remote Profile": [
            "リモートプロフィールを削除"
          ],
          "Reply as %s": [
            "%s として返信"
          ],
          "Original Comment URL": [
            "元のコメントの URL"
          ],
          "Remember me for easier comments": [
            "簡単にコメントするためにログイン状態を保存する"
          ],
          "Or, if you know your own profile, we can start things that way! (eg <code>@yourusername@example.com<\/code>)": [
            "お使いのプロフィールがわかる場合は、その方法で開始できます ( <code>@yourusername@example.com<\/code> など)。"
          ],
          "Copy and paste the Comment URL into the search field of your favorite fediverse app or server.": [
            "コメント URL をお好みの Fediverse アプリまたはサーバーの検索フィールドにコピー & ペーストします。"
          ],
          "Reply on the Fediverse": [
            "Fediverse で返信"
          ],
          "Remote Reply": [
            "リモート返信"
          ],
          "Reply": [
            "返信"
          ],
          "Your Profile": [
            "あなたのプロフィール"
          ],
          "Copy": [
            "コピー"
          ],
          "My Profile": [
            "プロフィール"
          ],
          "Invalid": [
            "無効"
          ],
          "Error": [
            "エラー"
          ],
          "Opening...": [
            "展開中…"
          ],
          "Loading...": [
            "読み込み中…"
          ]
        },
        "comment": {
          "reference": "build\/remote-reply\/index.js"
        }
      }
    }
    ```
    • ishii ishii より:

      「連合で返信」の元の英語は"Reply with federation"らしい。
      「includes/class-comment.php」の95行目で使われているとのこと。
      //wp-content/languages/plugins/activitypub-ja.po より。

      • ishii ishii より:

        同じく /wp-content/languages/plugins/activitypub-ja.po によると、
        "Reply on the Fediverse"は build/remote-reply/block.json で使われているらしい。
        ほとんどがphpファイルで使われているのだけど、jsonファイルで使われているものがいくつかあるっぽい。その他のjsonファイルで使われているものが翻訳されているかは分からないが、build/reply/block.json で使われている"Federated Reply"の翻訳は"連携された返信"らしく、これは見たことがある。

    • ishii ishii より:

      プラグイン「ActivityPub」には投稿にフォローボタンを設置するブロックが用意されていて、そのボタンをクリックしたときに表示されるウインドウは日本語に翻訳されていて、その翻訳が入ったファイルもある。
      /wp-content/languages/plugins/activitypub-ja-9736b4d1ed88cdb429a2d952f692041a.json

      ```json
      {
        "translation-revision-date": "2025-03-27 10:54:07+0000",
        "generator": "GlotPress\/4.0.1",
        "domain": "messages",
        "locale_data": {
          "messages": {
            "": {
              "domain": "messages",
              "plural-forms": "nplurals=1; plural=0;",
              "lang": "ja_JP"
            },
            "Submit profile": [
              "プロフィールを送信"
            ],
            "Enter your ActivityPub profile": [
              "ActivityPub プロフィールを入力"
            ],
            "Copy handle to clipboard": [
              "ハンドルをクリップボードにコピー"
            ],
            "This <strong>%1$s<\/strong> block will adapt to the page it is on, displaying the user profile associated with a post author (in a loop) or a user archive. %2$s": [
              "この <strong>%1$s<\/strong> ブロックは配置されたページに応じて、投稿者に関連するユーザープロフィール (ループ表示) またはユーザーアーカイブを表示します。 %2$s"
            ],
            "It will be empty in other non-author contexts.": [
              "投稿者以外のコンテキストでは空になります。"
            ],
            "Follow Me": [
              "フォロー"
            ],
            "Dynamic User": [
              "ダイナミックユーザー"
            ],
            "Site": [
              "サイト"
            ],
            "Remember me for easier comments": [
              "簡潔にコメントするためにログイン状態を保存する"
            ],
            "Or, if you know your own profile, we can start things that way! (eg <code>@yourusername@example.com<\/code>)": [
              "お使いのプロフィールがわかる場合は、その方法で開始できます ( <code>@yourusername@example.com<\/code> など)。"
            ],
            "Select User": [
              "ユーザーを選択"
            ],
            "Followers Options": [
              "フォロワーオプション"
            ],
            "Your Profile": [
              "あなたのプロフィール"
            ],
            "Copy": [
              "コピー"
            ],
            "Copy and paste my profile into the search field of your favorite fediverse app or server.": [
              "プロフィールをお好みの Fediverse アプリまたはサーバーの検索フィールドにコピー&ペーストしてください。"
            ],
            "My Profile": [
              "プロフィール"
            ],
            "Invalid": [
              "無効"
            ],
            "Error": [
              "エラー"
            ],
            "Opening...": [
              "展開中..."
            ],
            "Loading...": [
              "読み込み中..."
            ],
            "Follow": [
              "フォロー"
            ],
            "Follow %s": [
              "%s をフォロー"
            ],
            "Hello Dolly Fan Account": [
              "Hello Dolly ファンアカウント"
            ],
            "Follow me on the Fediverse": [
              "Fediverse でフォロー"
            ]
          }
        },
        "comment": {
          "reference": "build\/follow-me\/index.js"
        }
      }
      ```
      • ishii ishii より:

        activitypub-ja-de1551be109cafae37c0263881b1eb6b.json の翻訳も activitypub-ja-9736b4d1ed88cdb429a2d952f692041a.json の翻訳も、activitypub-ja.po には含まれていないので、たぶん、別の形で使われているのだと思うが…。

  5. ishii ishii より:

    ログインしていれば、ボタンの形で右下に「返信」「連合で返信」と表示される。
    ログインしてないと「ログインして返信する」が右下のリンクテキストで表示され、「Reply on the Fediverse」がリンクテキストのような見た目のボタン(テキストを選択できない)として左下に表示される。
    その辺り、一貫性がない。

    • ishii ishii より:

      この記事のコメント欄で確認できる。

      コメント欄からのリプライのメンション表示が変な件 | いしい@試行錯誤
      https://ishii00141.stars.ne.jp/20250326-0824-2149/

    • ishii ishii より:

      「返信」「連合で返信」「ログインして返信する」がaタグであるのに対して、「Reply on the Fediverse」はbuttonタグ。
      「返信」「連合で返信」の枠線は .comment-reply-link で指定されているが、「ログインして返信する」は .comment-reply-login だけなので枠線が無くなってる。classに comment-reply-link を追加すれば枠線が付いて「返信」「連合で返信」と同様になる。
      「Reply on the Fediverse」は .components-button が枠線の邪魔をしている。そして、その親要素であるdivタグの .activitypub-remote-reply が右寄せの邪魔をしている。

      そこらへんから、自分のサイトの「追加CSS」で対処できるのだけど、「ログインして返信する」を隠しちゃって、その状態で「Reply on the Fediverse」が「返信」「連合で返信」のようなボタン形式で右下に存在することが妥当なのかは検討が必要。それだけ返信できる状態だけど、Fediverseで返信するのなら、「ログインして返信する」になっているコメントも同じでしょ!と思う。

      • ishii ishii より:

        「Fediverseで返信するのなら、「ログインして返信する」になっているコメントも同じでしょ!」ということなら、「Reply on the Fediverse」も非表示にしちゃっても良いのか…。

        • ishii ishii より:

          そもそも、ログインしている状態で「返信」「連合で返信」と別れちゃってるのは分からないではないが、「返信」の方をFediverseで返信したい時もあるよね。その際のコメントのURLはドメイン/?c=~ の形式なんだけど、コメントに載ってるリンクURLだと 記事のURL/#comment-~ となっちゃってて、このURLをマストドンで検索してもコメントではなく記事が見つかるだけ。
          そんなわけで、全てのコメントに「Fediverseで返信」があった方が良いのではないか?
          コメント欄からの「返信」と「ログインして返信する」もあって、見た目がよろしくないけれど、機能的には両方あった方が良いと思う。Fediverseから返信されたコメントに対しては「Fediverseで返信」だけにすれば良い。
          ログインの有無で変わるのは「返信」と「ログインして返信する」のどちらになるかだけ。その方がすっきりする。

          • ishii ishii より:

            私のサイトに、こんなのを設置してるのだけど、

            コメントのURLを変換するフォームを追加 | いしい@試行錯誤
            https://ishii00141.stars.ne.jp/20250311-1154-1675/

            全てのコメントに「Fediverseで返信」が付いてくれれば、不要になる。
            実際は「URLをアカウントに変換」機能がおまけで付ているから、そっちが不要になるまでは無くせないけど…。

            • ishii ishii より:

              あっ、「連合で返信」は「Fediverseで返信」とは異なり、コメント欄から返信するもので、機能としては「返信」や「ログインして返信する」と同じ。「Fediverseに送らずに返信」という返信方法が用意されているのなら、それとの区別で必要かもしれないが、通常の「返信」もFediverseに送られちゃうから、「連合で返信」と同じ。
              ややこしや。

              • ishii ishii より:

                分け方としては次のような感じ。
                ・コメント欄から返信
                 ・Fediverseに送信しない
                 ・Fediverseにも送信
                ・Fediverseで返信

                「コメント欄から返信」の方の二つはコメントフォームに設置すれば良いのではないか?
                コメントに表示されるのは「返信」と「Fediverseで返信」の二つが良い。

                • ishii ishii より:

                  「Reply on the Fediverse」を一度試して、アカウントの保存にチェックを入れておいたら、ボタンの名前が変わってた。
                  例えば、「Reply as @hitorinezumi@fedibird.com」のように。
                  これをクリックすると、コメントのURLをコピーするためのウインドウは表示されずに直接Fediverseで表示しようとする。たぶん、頻繁にコメントする際には便利かもしれないが…。
                  頻繁にコメントする時にはFediverseの方でコメントするよね。たまにしかコメントせずに、アカウントの入力が面倒な場合は、コメントのURLをコピーしてアカウントを入力するウインドウに自動的に入力された方が、私は好み。そっちだと思ってたんだよね…。

                  • ishii ishii より:

                    「Reply on the Fediverse」の仕様は変わりそうになくて、私の好みじゃないから「ログインして返信する」と同じように隠すことに決定!

                    • ishii ishii より:

                      追加CSSに次のコードを追加した。

                      /*「ログインして返信する」と「Reply on the Fediverse」を非表示に*/
                      .comment-reply-login,.activitypub-remote-reply__button {
                        display:none;
                      }
                      .comment-body {
                        border: 2px solid #eee;
                        padding:2px 10px;
                      }
                      /*「ログインして返信する」と「Reply on the Fediverse」を非表示に*/
                  • ishii ishii より:

                    「Reply on the Fediverse」が右下ではなく左下に表示されていたのには合理的な理由があったんだね。
                    ボタン名が変わって、たぶん、複数のアカウントから返信した場合は複数のボタンが用意されるようになるから、その場合のスタイルとしては左寄せの方が良い。
                    便利な機能かもしれないが、私の好みではないので、コメントに対するFediverseでの返信はコメントのURLや記事のURLをFediverseで検索してから表示した方が良い。「マストドンで表示」ボタンのようなものがあっても良いかもしれないが…。

                    シェアボタンの上に「マストドンで表示」ボタンを設置 | いしい@試行錯誤
                    https://ishii00141.stars.ne.jp/20250322-1621-2080/

                    • ishii ishii より:

                      サイドバーの「コメントURL変換」に「マストドンで表示」ボタンを設置した。ちょっとコードが長くなったので、後でコードを別のブログに載せておく。

                      htmlソースメモ
                      https://html-memo-hitorinezumi.blogspot.com/

  6. ishii ishii より:

    5.8.0に更新されて、「Reply on the Fediverse」は「Fediverse で返信」になって、ボタンをクリックして表示されるウインドウも英語ではなく日本語になった。

    "Reply links and popup modals are now properly translated for logged-out visitors.
    "
    プラグイン「ActivityPub」が5.8.0に更新された。 | いしい@試行錯誤
    https://ishii00141.stars.ne.jp/20250425-0805-2855/

タイトルとURLをコピーしました