Twenty Twelve v1.0用の子テーマを作成していますが、Open Sansフォントを削除したいです。
Open SansがTwenty Twelveのfunctions.phpに追加されました。
wp_enqueue_style( 'twentytwelve-fonts', add_query_arg( $query_args, "$protocol://fonts.googleapis.com/css" ), array(), null );
私はchildthemeのfunctions.phpでスタイルシートの登録解除/デキューを試みました(下記の例を参照)が、効果はありません。
function example_scripts_styles() {
wp_deregister_style( 'twentytwelve-fonts' );
wp_dequeue_style( 'twentytwelve-fonts' );
}
add_action( 'wp_enqueue_scripts', 'example_scripts_styles' );
どのように私はこのファイルを削除することができますか?ありがとうございます。
答えを見つけた ここ :
スクリプトのデキュー呼び出しは、wp_print_scriptsアクションフック(..)に追加する必要があります。これは、スクリプトは通常wp_enqueue_scriptフックにエンキューされるためです。これは、wp_headプロセスの早い段階で行われます。 wp_print_scriptsフックはスクリプトが印刷される直前に発生するので、プロセスの最新のものです。 (オットー)
同じロジックに従って、Open Sansフォントを削除するためにwp_print_styles
を使用できます。
function remove_open_sans() {
wp_dequeue_style( 'twentytwelve-fonts' );
}
add_action('wp_print_styles','remove_open_sans');
これでうまくいきました。
WP 3.8以降、 thetricksterの要旨 を使用して、フロントエンドスタイルから 'Open Sans'を正常に削除しました。
<?php
// Remove Open Sans that WP adds from frontend
if (!function_exists('remove_wp_open_sans')) :
function remove_wp_open_sans() {
wp_deregister_style( 'open-sans' );
wp_register_style( 'open-sans', false );
}
add_action('wp_enqueue_scripts', 'remove_wp_open_sans');
// Uncomment below to remove from admin
// add_action('admin_enqueue_scripts', 'remove_wp_open_sans');
endif;
?>
'Open Sans'はプラグインに依存する可能性があります。
Twenty Twelve v1.1のfunctions.phpでは、コメントはwp_enqueue_scripts
フックからスタイルシートを削除する方法を説明します。
function mytheme_dequeue_fonts() {
wp_dequeue_style( 'twentytwelve-fonts' );
}
add_action( 'wp_enqueue_scripts', 'mytheme_dequeue_fonts', 11 );
うまくいかなかったあなたの試みはadd_action()
の priorityパラメータ を欠いていました。親テーマはデフォルトの優先度10でスタイルをエンキューするので、子テーマは優先度11でスタイルをデキューする必要があります。
あなたはWordPress自身がOpen Sans(少なくともバージョン3.8)もロードしていることに気付くでしょう。実際、Open Sansを私には3回ロードしていました。1つはWP admin用、もう1つはTinyMCEエディタ用、もう1つはページ用です。
Open Sansを完全に削除することを目標としている場合は、WordPress自体をハッキングする必要があります(または古いバージョンのままにします)。
Open Sansを削除するための私自身のコード(少なくともユーザーがログインしていないとき(ほとんどの場合))は、私のテーマのfunctions.php
です。
add_action( 'wp_enqueue_scripts'、 'ays_setup'、9); function ays_setup(){ /* no Sansフォントを開くTinyMCE */ remove_filter( 'mce_css'、 'twentytwelve_mce_css'); /* noページのSansフォントを開く*/ remove_action( 'wp_enqueue_scripts' 、 'twentytwelve_scripts_styles'); add_action( 'wp_enqueue_scripts'、 'ays_scripts_styles'); } function ays_scripts_styles(){ global $ wp_styles; /* *コメント付きのページをサポートするために、コメントフォームのあるページにJavaScriptを追加します(使用中の場合)。 ] */ if(is_singular()&& comments_open()&& get_option( 'thread_comments')) wp_enqueue_script( 'comment-reply'); //ナビゲーションメニューの表示/非表示の動作を処理するためのJavaScriptを追加します。 wp_enqueue_script( 'twentytwelve-navigation'、get_template_directory_uri()。 '/ js /navigation.js '、array()、' 1.0 '、true); //メインのスタイルシートをロードします。 wp_enqueue_style(' twentytwelve-style '、get_stylesheet_uri() ]; // Internet Explorer固有のスタイルシートをロードします。 wp_enqueue_style( 'twentytwelve-ie'、get_template_directory_uri()) '/css/ie.css'、配列( '20 12スタイル')、 '20121010'); $ wp_styles-> add_data( '20 12 - すなわち'、 '条件付き'、 'lt IE 9 '); }
twentytwelve_scripts_styles
には、Open Sansをロードするビットを除いて、すべてがtwentytwelve_scripts_styles
に含まれています。