CSSを記述する時は追加CSSに書いたり、子テーマのStyle.cssに書いたり、はたまた自分でファイルを用意して読み込んだりと様々な方法があると思います。
個人的にはfunctions.phpに読み込む条件をつけて(例えばトップページのみ読み込む等)パーツごとにCSSの記述を分けたいということから
Code Snippetsを使って記述を分けて読み込ませたりすることがあります。
複数の小さなCSSを条件別に管理する例です。
インライン化するとHTMLは増えるため、まとめれば必ず速くなるわけではありません。
ということで記述方法を少し工夫してCSSをインライン化+結合して読み込ませてみました。

その備忘録です。
WordPressでCSSのコードを結合してインライン化して読み込む方法
変更前のfunctions.phpまたは既存スニペットを保存し、どちらか一方へ以下の3つを一組で追加します。
旧motoki_custom_stylesとcss_minifyのコードは、保存したうえで今回のコードへ置き換えます。
CSSは管理者が書いた固定文字列に限り、利用者の入力を連結しないでください。
CSSの記述
いくつかCSSを書いてみます。


ヘッダー用CSS
add_filter( 'waza_inline_css_parts', function ( $parts ) {
$parts[] = '#header { background-color: #0ef300; }
@media (max-width: 768px) { #header { background-color: #fff; } }';
return $parts;
} );トップページ用CSS
add_filter( 'waza_inline_css_parts', function ( $parts ) {
if ( is_front_page() ) {
$parts[] = '#content { background-color: #f00; }
@media (max-width: 768px) { #content { background-color: #fff; } }';
}
return $parts;
}, 20 );※トップページ用には出力の条件を付けています。
CSSのコードを結合してインライン化して読み込む
最後に文字列を改変せず連結し、WordPressのインラインCSS APIへ渡します。
正規表現によるコメント・空白削除は、文字列やURLを壊す可能性があるため行いません。

add_action( 'wp_enqueue_scripts', function () {
$parts = apply_filters( 'waza_inline_css_parts', array() );
$parts = array_filter( $parts, 'is_string' );
if ( ! $parts ) return;
wp_register_style( 'waza-inline-parts', false, array(), null );
wp_enqueue_style( 'waza-inline-parts' );
wp_add_inline_style( 'waza-inline-parts', implode( "\n", $parts ) );
}, 20 );次の画像は旧実装の出力記録です。
現行コードを適用した結果は、後の「画面幅とページを切り替えて確認する」の検証画像を参照してください。

画面幅とページを切り替えて確認する
| 条件 | ヘッダーの背景 | 本文領域の背景 |
|---|---|---|
| フロントページ・幅769px以上 | 緑(#0ef300) | 赤(#f00) |
| フロントページ・幅768px以下 | 白(#fff) | 白(#fff) |
| 通常記事・幅769px以上 | 緑(共通の例) | フロントページ用の赤は追加されない |
| 追加した3つの処理を停止 | この例の緑は追加されない | この例の赤・白は追加されない |
2026年10月2日にWordPress 7.1.2の隔離環境で、幅1280px・769px・768px・375pxの背景色と、通常記事の出力、処理停止時の復元を確認しました。
以下は掲載コードを適用した検証用の実画面です。
実際のテーマでは、同じ要素を指定するCSSの優先順位によって表示が変わるため、適用後の計算済みスタイルも確認してください。


まとめ
ちゃんと開発環境を整えたほうがいいという意見もあると思いますが、
ケースによってはさっさとコードを書きつつ、管理もしやすく、それでいてちゃんと高速化も考えた出力方法を考えた時に、
この方法を試す結果になりました。
気になった方はぜひ試してみてください。
GitHubのMOTOKI-LLC/WAZA-codeの旧版サンプルは本文との同期を確認していないため、実装には本記事の掲載コードを使用してください。
背景色は確認用なので実際のデザインへ変更してください。
PCと768px以下、フロントページと通常記事で適用範囲を確認します。
手順内に残したコード設定の画像は旧実装の記録です。
戻す場合は3つの追加処理を停止・削除し、置き換えた既存コードがある場合は導入前に保存した内容へ戻します。
キャッシュを削除して表示を確認してください。
速度改善は未測定です。
ページのソースでwaza-inline-parts-inline-cssのstyle要素を探し、フロントページ用の指定が通常記事に含まれないことを確認します。
wp_add_inline_styleの仕様を参照できます。



