เอา Open Sans ออกจากชุดรูปแบบ Twenty Twelve


16

ฉันกำลังสร้างธีมลูกสำหรับ Twenty Twelve v1.0 และฉันต้องการลบแบบอักษร Open Sans

Open Sans ถูกเพิ่มเข้ามาในฟังก์ชั่นของ Twenty Twelve

wp_enqueue_style( 'twentytwelve-fonts', add_query_arg( $query_args, "$protocol://fonts.googleapis.com/css" ), array(), null );

ฉันได้พยายามยกเลิกการลงทะเบียน / ถอนการสไตล์ชีทในฟังก์ชั่น childtheme's.php (ดูตัวอย่างด้านล่าง) แต่ไม่มีผล:

function example_scripts_styles() {     
    wp_deregister_style( 'twentytwelve-fonts' );    
    wp_dequeue_style( 'twentytwelve-fonts' );
}
add_action( 'wp_enqueue_scripts', 'example_scripts_styles' );

มีแนวคิดใดบ้างที่ฉันจะลบไฟล์นี้? ขอบคุณ!

คำตอบ:


12

พบคำตอบได้ที่นี่ :

การเรียกการตัดสคริปต์ควรเพิ่มใน action hook ของ wp_print_scripts (.. ) นี่เป็นเพราะสคริปต์มักจะถูกจัดคิวบนเบ็ด wp_enqueue_script ซึ่งเกิดขึ้นก่อนในกระบวนการ wp_head เบ็ด wp_print_scripts เกิดขึ้นก่อนที่สคริปต์จะถูกพิมพ์และดังนั้นจึงเป็นกระบวนการล่าสุด (อ็อตโต)

ทำตามตรรกะเดียวกันเราสามารถใช้wp_print_stylesลบแบบอักษร Open Sans:

function remove_open_sans() {
   wp_dequeue_style( 'twentytwelve-fonts' );
}
add_action('wp_print_styles','remove_open_sans');

นี่เป็นการหลอกลวง


6

ใน WP 3.8+ ฉันสามารถลบ 'Open Sans' ออกจากสไตล์ส่วนหน้าของฉันโดยใช้ส่วนสำคัญของ thetrickster :

<?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' สามารถพึ่งพาปลั๊กอินได้


สิ่งนี้ใช้ได้กับฉันในธีมที่แตกต่างกัน ฟังก์ชั่นของชุดรูปแบบลูกของฉัน ..... ฉันมีความสุขสุด ๆ ฉันอยู่ในประเทศจีนดังนั้นการเรียก google ที่ไม่พึงประสงค์จึงไม่ใช่การเพิ่มประสิทธิภาพขนาดเล็ก - หน้าเว็บของฉันแฮงค์สองสามนาทีเพื่อรอการเรียกไปยัง google ที่จะตาย นี่เป็นเรื่องใหญ่สำหรับฉัน :-D
Mike M

โอ้และใช่ฉันระบุไว้ในปลั๊กอิน (ละเอียดด้วยการปิดการใช้งานทีละครั้ง) == Jetpack ..... ใหญ่มากและยากมากที่จะหาบางสิ่งบางอย่าง ขอบคุณ WP
Mike M

4

ใน function.php ของ Twenty Twelve v1.1 ความคิดเห็นจะอธิบายวิธีลบสไตล์ชีทออกจากwp_enqueue_scriptshook:

function mytheme_dequeue_fonts() {
         wp_dequeue_style( 'twentytwelve-fonts' );
      }

add_action( 'wp_enqueue_scripts', 'mytheme_dequeue_fonts', 11 );

ความพยายามของคุณที่ไม่ได้งานที่ขาดหายไปพารามิเตอร์ลำดับความสำคัญadd_action()ใน ธีมหลักจัดคิวให้สไตล์ด้วยระดับความสำคัญเริ่มต้นเท่ากับ 10 ดังนั้นธีมลูกต้อง dequeue ด้วยระดับความสำคัญ 11


3

คุณจะพบว่า WordPress เองโหลด Open Sans (อย่างน้อยเวอร์ชัน 3.8) อันที่จริงมันโหลด Open Sans สามครั้งสำหรับฉัน: หนึ่งสำหรับผู้ดูแล WP, หนึ่งสำหรับแก้ไข TinyMCE และอีกหนึ่งสำหรับหน้า

หากเป้าหมายของคุณลบ Open Sans ออกไปโดยสิ้นเชิงคุณจะต้องแฮก WordPress เอง (หรืออยู่กับเวอร์ชั่นที่เก่ากว่า)

รหัสของฉันเพื่อลบ Open Sans (อย่างน้อยเมื่อผู้ใช้ไม่ได้เข้าสู่ระบบซึ่งส่วนใหญ่แล้ว) เป็นธีมของฉันfunctions.php:

add_action ('wp_enqueue_scripts', 'ays_setup', 9);

ฟังก์ชั่น ays_setup () {

    / * ไม่มีแบบอักษร Open Sans ใน TinyMCE * /
    remove_filter ('mce_css', 'twentytwelve_mce_css');

    / * ไม่มีแบบอักษร Open Sans สำหรับหน้า * /
    remove_action ('wp_enqueue_scripts', 'twentytwelve_scripts_styles');
    add_action ('wp_enqueue_scripts', 'ays_scripts_styles');
}

ฟังก์ชั่น ays_scripts_styles () {
    $ wp_styles ทั่วโลก;

    / *
     * เพิ่ม JavaScript ให้กับหน้าเว็บที่มีแบบฟอร์มแสดงความคิดเห็นเพื่อสนับสนุน
     * ไซต์ที่มีความคิดเห็นที่เป็นเธรด (เมื่อใช้งานอยู่)
     * /
    หาก (is_singular () && comments_open () && get_option ('thread_comments'))
        wp_enqueue_script ('ความคิดเห็นตอบกลับ');

    // เพิ่ม JavaScript เพื่อจัดการพฤติกรรมการนำทางแบบซ่อนและแสดง
    wp_enqueue_script ('twentytwelve-navigation', get_template_directory_uri (). '/js/navigation.js', อาร์เรย์ (), '1.0', จริง);

    // โหลดสไตล์ชีทหลักของเรา
    wp_enqueue_style ('ยี่สิบสองสไตล์', get_stylesheet_uri ());

    // โหลดสไตล์ชีทเฉพาะของ Internet Explorer
    wp_enqueue_style ('twentytwelve-ie', get_template_directory_uri (). '/css/ie.css', อาร์เรย์ ('ยี่สิบสองสไตล์'), '20121010');
    $ wp_styles-> add_data ('twentytwelve-ie', 'เงื่อนไข', 'lt IE 9');
}

twentytwelve_scripts_stylesมีทุกอย่างtwentytwelve_scripts_stylesยกเว้นบิตที่โหลด Open Sans

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.