404 NOT FOUND

404 Not Found

お探しのページは見つかりませんでした。

最近の投稿
最近のコメント
ishii
ishii
2025.12.10
「試何変類」(中国語)をGoogle翻訳したら「どのような変身ですか?」となって、翻訳された。ただ、「どのような変身ですか?」をGoogle翻訳したら「什麼樣的轉變?」で「試何変類」にならなかった。Google翻訳が中国語と解釈して強引に翻訳したのかも。それで #Gemini に尋ねてみたら、「結論から申し上げますと、「試何変類」を「どのような変身ですか?」と翻訳するのは、文脈がなければ一般的には誤り、または不自然な翻訳である可能性が高いです。」理由を述べて、結論は、「したがって、一般的な状況において「試何変類」を「どのような変身ですか?」と翻訳するのは、意味的に大きなズレがあるため誤りである可能性が高いです。」
Geminiが作る画像は日本語が変
ishii
ishii
2025.12.06
半角で表示できるように再修正。改行タグのマストドン表記テスト | いしい@試行錯誤https://ishii00141.stars.ne.jp/20251206-0955-4482/// マストドンが<~>をタグと認識したりデコードされたくない &~; の文字をデコードするのを避けるため。$compensated_content = str_replace('&', '&amp;', $compensated_content);$compensated_content = str_replace('<', '&lt;', $compensated_content);$compensated_content = str_replace('>', '&gt;', $compensated_content);return \trim($compensated_content) . $excerpt_more;// 短いコンテンツやトリミング不要な場合は、そのまま返す(ただし、マストドンでの表示に対処する。)$excerpt = ...
[ap_excerpt]が少ない文字数で抜粋してしまう問題に対処
ishii
ishii
2025.12.06
1回目:$excerpt = str_replace('&', '&amp;', $excerpt);$excerpt = str_replace('<', '&lt;', $excerpt);$excerpt = str_replace('>', '&gt;', $excerpt);結果:マストドン(web): <br>マストドン(html): &lt;br&gt;WordPress(web): <br>WordPress(html): &lt;br>WordPress(post): &lt;br>WordPress(ap_outbox): \u0026lt;br\u0026gt;
改行タグのマストドン表記テスト
ishii
ishii
2025.12.06
コメントの場合、「<br>」と表示させるため、「&lt;br&gt;」と書く。これがそのままap_outboxのユニコードに変換されて「\u0026amp;lt;br\u0026amp;gt;」となり、マストドンでの表示に問題ない。htmlコードは「&lt;br&gt;」記事の場合、「<br>」と表示させるため、「<br>」とそのまま書き、postテーブルは「&lt;br>」や「&lt;br&gt;」と保管される。デフォルトだと、これがap_outboxのユニコードに変換される時に「\u003Cbr /\u003E」になって、マストドンでは「\n」(htmlコードでは「<br />」)
ダブルクォーテーションとシングルクォーテーションとアンパサンドを含む場合のテスト
ishii
ishii
2025.12.06
このコメントの「<br>(web)」(web)→「\u0026amp;lt;br\u0026amp;gt;\u300d(web)」(ap_outbox)→「<br>」(web)」(マストドン)同じ「\u0026amp;lt;br\u0026amp;gt;」(ap_outbox)でも、マストドンでの表示は、記事からの場合は「&lt;br&gt;」となり、コメントからなら「<br>」となる。
ダブルクォーテーションとシングルクォーテーションとアンパサンドを含む場合のテスト
ishii
ishii
2025.12.06
ap_outboxのpost_contentの"content":プラグイン「ActivityPub」がwpautop関数を使ってる | いしい@試行錯誤https://ishii00141.stars.ne.jp/20251205-1525-4429/コード変更前、15:25「<br>ではなく<br />」(web)→「&lt;br>ではなく&lt;br />」(post)→「\u003Cbr /\u003E\u3067\u306f\u306a\u304f\u003Cbr /\u003E」(ap_outbox)→「\nではなく\n」(マストドン)このテスト「&lt;br&gt;」(web)の失敗例「&amp;lt;br&amp;gt;」(post)→19:11「\u0026amp;lt;br\u0026amp;gt;」(ap_outbox)→「&lt;br&gt;」(マストドン)このテスト「<br>」(web)の失敗例「&lt;br>」(post)→19:13「\u0026am...
ダブルクォーテーションとシングルクォーテーションとアンパサンドを含む場合のテスト
ishii
ishii
2025.12.05
最終結果のJSONより。(注意:実際は https:// の後の半角スペースはない)"content":"\u003Cp\u003E\u003Cstrong\u003E\u30c0\u30d6\u30eb\u30af\u30a9\u30fc\u30c6\u30fc\u30b7\u30e7\u30f3\u3068\u30b7\u30f3\u30b0\u30eb\u30af\u30a9\u30fc\u30c6\u30fc\u30b7\u30e7\u30f3\u3068\u30a2\u30f3\u30d1\u30b5\u30f3\u30c9\u3092\u542b\u3080\u5834\u5408\u306e\u30c6\u30b9\u30c8\u003C/strong\u003E\u003C/p\u003E\u003Cp\u003E\u3000\u30b3\u30f3\u30c6\u30f3\u30c4\u306b \u0026amp; \u3068\u304b \u0026amp;amp; \u3068\u304b \u0022 \u3068\u304b \u0026amp;quot;...
ダブルクォーテーションとシングルクォーテーションとアンパサンドを含む場合のテスト
ishii
ishii
2025.12.05
改行タグなどのタグをWordPressで紹介した時に、マストドンがタグとして認識してしまうのを避けるために紹介した部分は大文字にしておくのと、&~;などのようなエスケープ処理された文字をWordPressで紹介した時に、マストドンがデコードして表示してしまう問題に対処するため、次のように return 前に置換処理を入れる。// マストドンが<~>をタグと認識したりデコードされたくない &~; の文字をデコードするのを避けるため。$compensated_content = str_replace('<', '<', $compensated_content);$compensated_content = str_replace('>', '>', $compensated_content);$compensated_content = str_replace('&', '&amp;', $compensated_content);return \trim($compensated_content) . $excerpt_more;// ...
[ap_excerpt]が少ない文字数で抜粋してしまう問題に対処
ishii
ishii
2025.12.05
タグに関しては、タグらしく半角で表示しようとするとタグとしてマストドンに認識されてしまうし、エスケープして&を使った文字にしておくと、&が付いたままマストドンに表示されてしまう。&に関しては&amp;に置換して戻しておいた方が良いが、タグに関しては全角にするのが妥当かもしれない。
ダブルクォーテーションとシングルクォーテーションとアンパサンドを含む場合のテスト
ishii
ishii
2025.12.05
データベース内のJSONは次の通り。(注意:実際は https:// の後の半角スペースはない)"content":"\u003Cp\u003E\u003Cstrong\u003E\u30c0\u30d6\u30eb\u30af\u30a9\u30fc\u30c6\u30fc\u30b7\u30e7\u30f3\u3068\u30b7\u30f3\u30b0\u30eb\u30af\u30a9\u30fc\u30c6\u30fc\u30b7\u30e7\u30f3\u3068\u30a2\u30f3\u30d1\u30b5\u30f3\u30c9\u3092\u542b\u3080\u5834\u5408\u306e\u30c6\u30b9\u30c8\u003C/strong\u003E\u003C/p\u003E\u003Cp\u003E\u3000\u30b3\u30f3\u30c6\u30f3\u30c4\u306b \u0026#038; \u3068\u304b \u0026amp; \u3068\u304b \u0022 \u3068\u304b \u0026quot; ...
ダブルクォーテーションとシングルクォーテーションとアンパサンドを含む場合のテスト
ishii
ishii
2025.12.05
この対処法だと、文字数のカウントに問題が生じるので、却下。
プラグイン「ActivityPub」がwpautop関数を使ってる
ishii
ishii
2025.12.05
このバグは generate_post_summary()関数と、私のフック内の activitypub_get_full_content_for_trimming()関数にある html_entity_decode()関数にあり、html_entity_decode()関数によるデコードをコメントアウトすることで修正されるらしい。
プラグイン「ActivityPub」がwpautop関数を使ってる
ishii
ishii
2025.12.05
またバグか…。
プラグイン「ActivityPub」がwpautop関数を使ってる
ishii
ishii
2025.12.05
この記事のap_outboxのpost_contentのcontentは次のようになってる。読めるようにutf-8の部分をデコードしてある。URLも半角スペースを挿入してURLと認識されないようにしてある。(注意:実際は https:// の後の半角スペースはない)"content":"<p><strong>プラグイン「ActivityPub」がwpautop関数を使ってる</strong><br /><a rel=\"tag\" class=\"hashtag u-tag u-category\" href=\"https:// ishii00141.stars.ne.jp/tag/activitypub/\">#ActivityPub</a> <a rel=\"tag\" class=\"hashtag u-tag u-category\" href=\"https:// ishii00141.stars.ne.jp/tag/fediverse/\">#Fediverse</a> <...
プラグイン「ActivityPub」がwpautop関数を使ってる
ishii
ishii
2025.12.05
このリプライは、Mastodonの方で「削除して下書きに戻す」を行った時に削除されたもの。
プラグイン「ActivityPub」がwpautop関数を使ってる
いしい
2025.12.05
<br>や<br />が表示されてない。じゃなくて、改行タグとして機能させちゃってる。
プラグイン「ActivityPub」がwpautop関数を使ってる
いしい
2025.12.05
<br>や<br />が表示されてない。
プラグイン「ActivityPub」がwpautop関数を使ってる
ishii
ishii
2025.12.05
$string = preg_replace('/\n{2,}/', "\n", $string);を入れると、マストドンで表示する時に必要な改行も削除されてしまうようなので、次のようにコードを変えることにした。$string = preg_replace('/\n{3,}/', "\n\n", $string);
[ap_excerpt]が少ない文字数で抜粋してしまう問題に対処
ishii
ishii
2025.12.04
この記事の修正は、プラグイン「ActivityPub」が7.7.0に更新されたことで上書きされた。プラグイン「ActivityPub」が7.7.0に更新されたことで、この記事のような修正が必要だった問題は解消された。
プラグインActivityPub(7.6.1)の私的修正箇所
ishii
ishii
2025.12.04
図形を削除した後など、タグを除去した後、改行が複数繋がっていることもありそう。その対策として、次のコードも追加した。$string = preg_replace('/\n{2,}/', "\n", $string);
[ap_excerpt]が少ない文字数で抜粋してしまう問題に対処
ishii
ishii
2025.12.04
改行が2文字とカウントされている可能性があるので、function custom_mb_trim_url_compensated($string, $length, $excerpt_more) {の直下に、次のコードを追加した。$string = str_replace(array("\r\n", "\r"), "\n", $string);
[ap_excerpt]が少ない文字数で抜粋してしまう問題に対処
ishii
ishii
2025.12.04
英単語の途中で切断されるのは良いとして、300文字よりも早く止まってしまっていることが気になる。英単語が切断させないのなら、長い英単語のせいで300文字を超えちゃうから手前で止まるみたいな説明ができるのだけど、英単語の途中で切断させるのなら、ちょうど300文字で切断されても良いはずなのに…。
[ap_excerpt]が少ない文字数で抜粋してしまう問題に対処
ishii
ishii
2025.12.04
結論。数式ボックスは使わない。
WordPress 6.9 になって数式ブロックが追加された?
ishii
ishii
2025.12.04
MathJaxを使った方法なら、HTMLコードは次のように綺麗。<p>\begin{equation}<br>D(x)=(a-x) \left( \frac{x}{100+x} \right)=\frac{ax - x^2}{100+x} \label{eq:誤差整理}<br>\end{equation}</p>
WordPress 6.9 になって数式ブロックが追加された?
ishii
ishii
2025.12.04
なるほどね。ここからタグを削除して残ったテキストをマストドンに送るわけだから、\begin{equation}の前に余計なテキストが付いたわけだ。
WordPress 6.9 になって数式ブロックが追加された?
ishii
ishii
2025.12.04
数式部分のHTMLコードは次の通り。<div class="wp-block-math"><math display="block"><semantics><mtable displaystyle="true" columnalign="left center right" style="width:100%;"><mtr id="eq"><mtd class="tml-right" style="padding:0;width:50%;padding-left:0em;padding-right:0em;"></mtd><mtd class="tml-left" style="padding-left:1em;padding-right:0em;"><mrow><mi>D</mi><mo form="prefix" stretchy="false">(</mo><mi>x</mi><mo form="...
WordPress 6.9 になって数式ブロックが追加された?
いしい
2025.12.04
マストドンで見ると、数式部分が次のように表示されていて、入力したコードの並び替えが起きてる。\begin{equation}は冒頭にあるはず。D(x)=(a−x)(x100+x)=ax−x2100+x\begin{equation}D(x)=(a-x) \left( \frac{x}{100+x} \right)=\frac{ax - x^2}{100+x} \label{eq:誤差整理}\end{equation}
WordPress 6.9 になって数式ブロックが追加された?
ishii
ishii
2025.12.04
数式のコピーができないな。マウスを右クリックしても「数式」と認識されてない感じ。
WordPress 6.9 になって数式ブロックが追加された?
ishii
ishii
2025.12.04
"インラインで数式を挿入することも可能です。"WordPress 6.9の新機能─新ブロックやAPI、改善点が多数導入https://kinsta.com/jp/blog/wordpress-6-9/#h-5
WordPress 6.9 になって数式ブロックが追加された?
ishii
ishii
2025.12.03
#Gemini に尋ねた結果。はい、**WordPressのビジュアルエディターにおける** `<` のみを `&lt;` にエスケープする処理は、**合理的な処理**です。これは、記事の**コンテンツがHTMLとして解釈されるのを防ぎつつ、サーバー側の処理を簡略化する**ための、実用的な妥協案と言えます。---## 理由と合理性この処理の合理性は、以下の点に基づいています。1.  ### 誤ってHTMLとして解釈されるのを防ぐ  **ビジュアルエディター**(TinyMCEなどのWYSIWYGエディター)で記事を作成する場合、ユーザーが入力したテキストは最終的に**記事のコンテンツ**として保存され、ブラウザに表示される際に**HTMLとして解釈**されます。  ユーザーがコードスニペットとして `<div class="example">` と入力した場合、もしエスケープ処理がなければ、ブラウザはこの文字列を**HTMLタグの開始**と見なしてしまい、記事のレイアウトが崩れたり、予期せぬ挙動を引き...
WordPressのHTMLエスケープが変