global-styles-inline-cssとwp-block-library-cssの利用目的
WordPressで生成されたWebページのソースを見ると、headタグ内に次のような見慣れないstyleタグが挿入されているのがわかります。
- <link rel='stylesheet' id='wp-block-library-css' href='http://xxx.com/wp-includes/css/dist/block-library/style.min.css?ver=5.9.3' type='text/css' media='all' />
- <style id='global-styles-inline-css' type='text/css'>
- body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--duotone--dark-grayscale: url('#wp-duotone-dark-grayscale');--wp--preset--duotone--grayscale: url('#wp-duotone-grayscale');--wp--preset--duotone--purple-yellow: url('#wp-duotone-purple-yellow');--wp--preset--duotone--blue-red: url('#wp-duotone-blue-red');--wp--preset--duotone--midnight: url('#wp-duotone-midnight');--wp--preset--duotone--magenta-yellow: url('#wp-duotone-magenta-yellow');--wp--preset--duotone--purple-green: url('#wp-duotone-purple-green');--wp--preset--duotone--blue-orange: url('#wp-duotone-blue-orange');--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
- </style>
最初の行はwp-block-library-cssですね。
style.min.cssというファイルを読み込んでいます。
このファイルは中身を見ると、約8万3千文字あります。
以降の行は、global-styles-inline-cssです。
styleタグでスタイル定義しています。
改行が無いので短いように感じますが、8000文字近い文字数です。
合計約9万1千文字です。
めちゃくちゃ多いように感じますが、現在のネット環境なら体感的な通信速度に影響を与えるほどではありません。
ただしそれは、サーバーに余裕があるときの話です。
月間数百万PVあったりするとレスポンスに影響がでる可能性があります。
必要がないなら、削除したいですね。
ブロックエディターで使用するスタイル
WordPressで実際に記事を作成してみるとわかりますが、これらはブロックテーマで使用されるようです。
例えば次のように、ブロックエディタでテーブルを作成してみます。

ページを表示すると、次のtableタグが生成されます。
実際のものは改行されていないのですが、見やすいように改行してあります。
- <figure class="wp-block-table is-style-regular has-medium-font-size">
- <table class="has-vivid-red-color has-pale-pink-background-color has-text-color has-background">
- <tbody>
- <tr><td>aaa</td><td>ccc</td></tr>
- <tr><td>bbbb</td><td>ccc</td></tr>
- </tbody>
- </table>
- <figcaption>dddd</figcaption></figure>
tableタグで指定されているクラスのうち、has-medium-font-size、has-vivid-red-color、has-pale-pink-background-colorはstyleタグ(global-styles-inline-css)で定義されているものです。
.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}
.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}
.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}
global-styles-inline-cssは、フォントのサイズや色などについて定義されているようです。
tableタグで指定されているクラスのうち、wp-block-tableはcssファイル(wp-block-library-css)で定義されています。
.wp-block-table{margin:0 0 1em;overflow-x:auto}.wp-block-table table{border-collapse:collapse;width:100%}.wp-block-table .has-fixed-layout{table-layout:fixed;width:100%}.wp-block-table .has-fixed-layout td,.wp-block-table .has-fixed-layout th{word-break:break-word}.wp-block-table.aligncenter,.wp-block-table.alignleft,.wp-block-table.alignright{display:table;width:auto}.wp-block-table.aligncenter td,.wp-block-table.aligncenter th,.wp-block-table.alignleft td,.wp-block-table.alignleft th,.wp-block-table.alignright td,.wp-block-table.alignright th{word-break:break-word}.wp-block-table .has-subtle-light-gray-background-color{background-color:#f3f4f5}.wp-block-table .has-subtle-pale-green-background-color{background-color:#e9fbe5}.wp-block-table .has-subtle-pale-blue-background-color{background-color:#e7f5fe}.wp-block-table .has-subtle-pale-pink-background-color{background-color:#fcf0ef}.wp-block-table.is-style-stripes{border-spacing:0;border-collapse:inherit;background-color:transparent;border-bottom:1px solid #f0f0f0}.wp-block-table.is-style-stripes tbody tr:nth-child(odd){background-color:#f0f0f0}.wp-block-table.is-style-stripes.has-subtle-light-gray-background-color tbody tr:nth-child(odd){background-color:#f3f4f5}.wp-block-table.is-style-stripes.has-subtle-pale-green-background-color tbody tr:nth-child(odd){background-color:#e9fbe5}.wp-block-table.is-style-stripes.has-subtle-pale-blue-background-color tbody tr:nth-child(odd){background-color:#e7f5fe}.wp-block-table.is-style-stripes.has-subtle-pale-pink-background-color tbody tr:nth-child(odd){background-color:#fcf0ef}.wp-block-table.is-style-stripes td,.wp-block-table.is-style-stripes th{border-color:transparent}.wp-block-table .has-border-color>*,.wp-block-table .has-border-color td,.wp-block-table .has-border-color th,.wp-block-table .has-border-color tr{border-color:inherit}.wp-block-table table[style*=border-style]>*,.wp-block-table table[style*=border-style] td,.wp-block-table table[style*=border-style] th,.wp-block-table table[style*=border-style] tr{border-style:inherit}.wp-block-table table[style*=border-width]>*,.wp-block-table table[style*=border-width] td,.wp-block-table table[style*=border-width] th,.wp-block-table table[style*=border-width] tr{border-width:inherit}
テーブルの外観について定義されているのがわかります。
wp-block-library-cssはテーブルだけでなく、他のブロックエディタ要素について定義されています。
ブロックエディターを使用しないなら、必要ない
ここまででわかるように、ブロックエディタを使用するならglobal-styles-inline-cssは必要ですね。
逆に言うと、ブロックエディタを使用しないなら非常に無駄です。
削除しましょう。
global-styles-inline-cssとwp-block-library-cssの削除方法
global-styles-inline-cssとwp-block-library-cssの削除は、function.phpや自作プラグインなどに次のコードを記述します。
- remove_action( 'wp_enqueue_scripts', 'wp_enqueue_global_styles' );
- remove_action( 'wp_enqueue_scripts', 'wp_common_block_scripts_and_styles' );
このコードを実行した結果、ブロックエディタを使用していないのにページのレイアウトが崩れるとしたら、削除したスタイル定義をテーマやプラグインで使用している可能性があります。
この場合は、追加したコードを削除して元に戻すか、崩れた要素で使用しているスタイルを抜き出して、カスタマイズの追加cssに記述しましょう。
簡単な解説
global-styles-inline-cssとwp-block-library-cssはwp_headアクションで出力されます。
次の記事で紹介している方法で、wp_headアクションに登録されている関数を一覧表示してみます。
- *************wp_head
- 1 , _wp_render_title_tag [/wp-includes/general-template.php(1287)]
- 1 , wp_enqueue_scripts [/wp-includes/script-loader.php(2099)]
- 1 , wp_robots [/wp-includes/robots-template.php(20)]
- 1 , wp_post_preview_js [/wp-includes/functions.php(7328)]
- 1 , wp_maybe_inline_styles [/wp-includes/script-loader.php(2680)]
- 2 , wp_resource_hints [/wp-includes/general-template.php(3302)]
- 2 , feed_links [/wp-includes/general-template.php(3084)]
- 3 , feed_links_extra [/wp-includes/general-template.php(3130)]
- 7 , print_emoji_detection_script [/wp-includes/formatting.php(5716)]
- 8 , wp_print_styles [/wp-includes/functions.wp-styles.php(44)]
- ・・・省略
今回やりたいことと関係があるのは、wp_enqueue_scripts()関数です。
この関数は、wp_enqueue_scriptsアクションを実行します。
関数名とアクション名が同じなので混乱しますが、WordPressの特徴なので仕方がありません。
wp_enqueue_scriptsアクションに登録されている関数を一覧表示してみます。
- *************wp_enqueue_scripts
- 10 , wp_common_block_scripts_and_styles [/wp-includes/script-loader.php(2268)]
- 10 , wp_enqueue_global_styles [/wp-includes/script-loader.php(2309)]
- 10 , {closure} [/wp-includes/blocks.php(1226)]
- 10 , {closure} [/wp-includes/blocks.php(1226)]
- 1000 , wp_localize_jquery_ui_datepicker [/wp-includes/script-loader.php(1766)]
関係あるのは、wp_common_block_scripts_and_styles()とwp_enqueue_global_styles()関数です。
wp_common_block_scripts_and_styles()が、wp-block-library-cssをキューに登録しています。
wp_enqueue_global_styles()が、global-styles-inline-cssをキューに登録しています。
実際に出力されるのはwp_headアクションのwp_print_styles()関数ですが、global-styles-inline-cssを削除するならここまでの情報で十分です。
削除方法は二つ考えられます。
- キューに登録した後に、キューから登録を削除する
- キューに登録される前に、アクションからキュー登録を行う関数を削除する
登録した後削除するより、登録させない方が効率がいいです。
なので②を採用します。
function.phpや自作プラグインなどに次のコードを記述します。
- remove_action( 'wp_enqueue_scripts', 'wp_enqueue_global_styles' );
- remove_action( 'wp_enqueue_scripts', 'wp_common_block_scripts_and_styles' );
なお、ムダのように思われる①にも利点があります。
登録している関数を調べなくても、idがわかれば削除ができるのです。
- add_action( 'wp_print_styles' , 'my_dequeue_global_styles' ,1);
- function my_dequeue_global_styles(){
- wp_dequeue_style( 'global-styles' );
- wp_dequeue_style( 'wp-block-library' );
- }
キュー登録されたスタイルはwp_print_styles()関数で出力されますが、この関数は出力前にwp_print_stylesアクションを呼び出しています。
そこで、このアクションを使ってキュー登録から削除します。
wp_dequeue_style()関数は、スタイルのidを指定します。
ただし、末尾の -css または、 -inline-css を取り除いて指定します。
global-styles-inline-css → global-styles
wp-block-library-css → wp-block-library
■Googleで他サイト検索
■僕がおススメするアフィリエイト教材
■マーケティング施策ツール





こんにちは。
