フリーランスWeb開発者 🛠 WordPressプラグインを作ってます(AI Chatbot / Stripe連携 / PDF処理) Claude Code や Codex CLI が日常の相棒 PHP・JS・CSS・フロントエンドが好き ブログ → raplsworks.com

Joined January 2026
130 Photos and videos
Pinned Tweet
WordPress. org に3本プラグインを公開している個人開発者です。AIチャットボット / Stripeサンキューメール / PDFサムネイル生成。作った動機も中身も、全部ここにまとめています。 raplsworks.com/plugins/
1
21
重い処理を requestIdleCallback に逃がすと、入力やスクロールの邪魔をしにくい。 requestIdleCallback(() => 集計処理(), { timeout: 1000 }); アイドル時間に走り、timeout で最低保証もできる。Safari の対応だけ確認しておく。 #JavaScript
9
WordPress の wp_get_environment_type()、本番と開発の出し分けに使える。 production / staging / development / local を返す。wp-config.php の WP_ENVIRONMENT_TYPE 定数か環境変数で設定する。 「開発環境だけログを出す」をハードコードのフラグ無しで分けられる。 #WordPress
3
PHP 8.3 の #[\Override] 属性、親のメソッドを上書きしているつもりが綴り間違いで新規メソッドになっていた、という事故を実行前に止められる。 親に無いメソッドに付けると即エラー。インターフェース実装の取りこぼしにも効く。 #PHP
11
:where() は詳細度が常に 0。:is() は引数で一番強いものに合わせる。 ```css :where(.card) h2 { ... } /* 上書きしやすい */ :is(.card, .panel) h2 { ... } ``` リセット系や共通スタイルを :where で書くと、後から個別調整しても勝てる。 #CSS
1
7
post meta を REST に出すなら register_meta の show_in_rest を true に。 ```php register_post_meta("post", "price", [ "type" => "integer", "single" => true, "show_in_rest" => true, ]); ``` ブロックエディタや外部から読めるようになる。type 指定を忘れると弾かれる。 #WordPress
5
I just published I run Claude Code and Codex side by side. Here’s the division of labor that actually works. medium.com/p/i-run-claude-co…

21
クエリ文字列、自前で split せずに URLSearchParams に任せる。 const p = new URL(location.href).searchParams; p.get("id"); p.set("page", 2); p.toString(); エンコードもよしなにやってくれる。手で encodeURIComponent を書く場面がだいぶ減る。 #JavaScript
2
prompt caching はプレフィックス(前方)一致でしか効かない。 キャッシュしたい静的部分(システムプロンプト・長い文脈)を必ず先頭に置き、動的な user 入力は後ろに。順序を逆にすると、毎回キャッシュミスして 90% 削減の恩恵を取りこぼす。 #Claude #AnthropicAPI #生成AI
9
PHP の nullsafe 演算子 ?-> 、途中で null になると残りを評価せずチェーン全体が null になる。 $user?->profile?->name で、profile が null でもエラーにならず null が返る。 ただし代入の左辺や参照渡しには使えない。読み取り専用の保険として使う。 #PHP
1
1
33
土曜終了。canonical の細かい話、SEO関係者なら知っておきたいニッチネタ。 #1日の振り返り
1
I just published Claude Fable 5 lasted three days. Then the US government pulled it. medium.com/p/claude-fable-5-…

22
公式 MCP コネクタを追加する時、エンドポイント URL は HTTPS 込みで公式の表記を一字一句コピーする。 似た URL・サブドメイン・GitHub リポジトリを案内する第三者は信用しない。AI 連携は便利な分、接続先の正当性確認が命。 #MCP #セキュリティ
7
多言語サイトだと hreflang と canonical の組み合わせでつまずきます。 各言語版は自分自身を canonical に。hreflang で他言語版を列挙。「英語版が canonical で日本語版は alternate」のような誤指定は順位を落とします。 #SEO
4
hreflang と canonical の組み合わせ: 各言語版で、自分自身を canonical に指定。hreflang で他言語版を列挙。「英語版が canonical で日本語版は alternate」のような誤指定は順位を落とす。 #SEO
4
Search Console での canonical 確認: 「URL検査」→「Google の選択した canonical」が自分の指定と一致しているかを見る。一致しないなら、Google が別判断している。 #SEO #SearchConsole
3
クロスポスト先で canonical が効かないケース: - 媒体側が自分のドメインを優先するため(Qiita/Zenn) - Dev.to は「canonical_url」設定で動作するが反映に時間 - Hashnode は Original URL を入れるだけ 媒体ごとに挙動差あり。 #SEO
11
Yoast SEO や All In One SEO の自動 canonical: 投稿の permalink を自動設定。手動で別の URL を指定したい場合は専用フィールドへ。プラグイン同士で重複出力するとタグが2つ出る事故が起きる。 #SEO
7
その canonical、Header と HTML で違う URL を送ると危ない。 Google は両者の一致を期待していて、食い違うと「指定が混乱している」と判断され、どちらも採用されないことがあります。正解URLを単一の経路で送る。 #SEO
4
rel=canonical、Header と HTML の優先順位: Google は一致を期待。不一致だと「canonical指定が混乱している」と判断され、どちらも採用されないことがある。 単一の正解URLを単一の経路で送る。 #SEO
6
canonical の競合、ありがちなパターン: - HTML の <link rel="canonical"> と HTTP Header の Link: <...>; rel="canonical" の不一致 - 自己参照と他URLの混在 - 末尾スラッシュの有無 Google は基準が厳しい。 #SEO
4