Theme.info.ymlファイルのレイアウト検出モジュールからCSSスタイルを無効にしようとしています。私はいくつかのオプションを試しましたが、それを機能させることができないようです。これは私が今持っているものです。
libraries-override:
core/layout_discovery:
css:
theme:
core/modules/layout_discovery/layouts/twocol/twocol.css: false
CSSスタイルは、現時点ではstylesheets-removeを使用して削除できますが、そのプロパティは廃止されています。現時点では機能しているようです。
可能であれば、libraries-overrideを使用してCSSスチュールを削除する適切な方法を見つけたいと思います。
stylesheets-remove:
- core/modules/layout_discovery/layouts/onecol/onecol.css
フルパスの先頭に_/
_がないようです。また、オーバーライドするライブラリの名前も間違っています。ライブラリ_core/layout_discovery
_はありません。代わりに_layout_discovery/twocol
_である必要があります。
_libraries-override:
layout_discovery/twocol:
css:
theme:
/core/modules/layout_discovery/layouts/twocol/twocol.css: false
_
ソース: ライブラリのオーバーライドと拡張
または、ライブラリを hook_page_attachments_alter()
で設定解除しても同様の効果が得られます。これが、テーマの_*.theme
_ファイルに配置される実際のコードスニペットです。 Replacy MYTHEME
をテーマのマシン名に置き換えます。
_/**
* Implements hook_page_attachments_alter().
*/
function MYTHEME_page_attachments_alter(array &$attachments) {
foreach ($attachments['#attached']['library'] as $key => $library) {
// Install the Devel submodule Kint for debugging.
// Check all libs:
// ksm($attachments['#attached']['library']);
// Here I disable the core base library.
// Looks pretty ugly afterwards.
if ($library == 'system/base') {
unset($attachments['#attached']['library'][$key]);
}
// So for you it must be like following.
// Simply try to find the right name via ksm($library);
// or the other ksm() command from above.
if ($library == 'layout_discovery/twocol') {
unset($attachments['#attached']['library'][$key]);
}
}
}
_
Http-requestsの数を減らし、すべての不要なDrupal core css-filesの設定を解除します。最後に、この構成は機能します。
libraries-override:
layout_discovery/onecol: false
MY_THEME_NAME.info.ymlファイルに追加する必要があります
「admin/config/development/performance」ページの「clear all caches」を忘れないでください。