Bagaimana cara menghapus pengaturan penyesuai yang sudah ada sebelumnya?

15

Tema saya tidak menggunakan baris tag, bagaimana saya bisa menghapusnya dari penyesuai?

byronyasgur
sumber

Jawaban:

16

Terlambat ke pesta tetapi ini akan membantu:

$wp_customize->remove_control('blogdescription');

Anda ingin menghapus hanya kontrol itu, bukan seluruh bagian seperti yang disarankan di atas.

Natko
sumber
1
Pengaturan juga harus dihapus: $ wp_customize-> remove_setting ('blogdescription')
mimarcel
Apakah ini juga akan menghapus nilai tersimpan yang saat ini ada di sana? Saya mengalami masalah ketika saya ingin menghapus pengaturan / kontrol yang ada yang memiliki data yang ada, tetapi data tersebut masih dipanggil kembali. wordpress.stackexchange.com/questions/329343/…
Lee
10

Hapus pengaturan penyesuai yang sudah ada sebelumnya dalam tema wordpress dengan kode ini.

masukkan deskripsi gambar di sini

add_action( "customize_register", "ruth_sherman_theme_customize_register" );
function ruth_sherman_theme_customize_register( $wp_customize ) {

 //=============================================================
 // Remove header image and widgets option from theme customizer
 //=============================================================
 $wp_customize->remove_control("header_image");
 $wp_customize->remove_panel("widgets");

 //=============================================================
 // Remove Colors, Background image, and Static front page 
 // option from theme customizer     
 //=============================================================
 $wp_customize->remove_section("colors");
 $wp_customize->remove_section("background_image");
 $wp_customize->remove_section("static_front_page");

}
krupal patel
sumber
5

Saya menemukan kelas WP_Customize_Manager memiliki fungsi yang disebut remove_section(). Dalam fungsi Anda terhubung ke customize_registerAnda hanya dapat melakukan:

    $wp_customize->remove_section('nav');
    $wp_customize->remove_section('static_front_page');

Anda dapat menemukan ID bagian (yaitu 'nav') jika Anda memeriksa bilah judul akordeon bagian tersebut. Lihatlah ID dari <li>tag yang berisi dan itu adalah bagian dari string setelahnya "customize-section-". YAITU:

<li id="customize-section-static_front_page" class="control-section customize-section">

- ID-nya "static_front_page"

jessica
sumber
Itu terlihat lebih baik daripada solusi saya, jadi saya akan memberi Anda centang - Saya belum mengujinya tapi saya kira Anda sudah ... Saya tidak mendapatkan title_tagline - tentu saja itu seharusnya mengatakan static_front_page, apakah itu salah ketik BAC?
byronyasgur
@byronyasgur ya, itu kesalahan copy paste, diperbaiki sekarang. Terima kasih!
jessica
Sebenarnya, ini bukan jawaban yang benar. Ini menghapus seluruh bagian yang berisi judul situs & tagline. Pertanyaannya hanya meminta tagline. Lihatlah jawaban di bawah ini oleh @byronyasgur
BFTrick
2

Akses ke OTTO

Satu hal terakhir yang dapat Anda tambahkan ke bagian adalah opsi "theme_supports". Ini akan membuat menu tidak muncul kecuali tema mendukung sesuatu. Jika Anda meletakkan kode ini dalam tema itu sendiri, maka Anda sudah tahu apa yang didukung tema itu, jadi itu tidak masuk akal. Inti menggunakan ini untuk tidak menampilkan opsi header dan latar belakang jika tema tidak mendukung mereka.

Jadi saya menggabungkannya

    $wp_customize->get_setting('blogdescription')->transport='postMessage';

... dan menemukan bahwa kode berikut berfungsi. Saya menggunakan falsetheme_supports ... tidak yakin apa yang harus saya masukkan ... mungkin seseorang yang sedikit lebih ahli dapat memperbaiki ini.

    $wp_customize->add_control('blogdescription')->theme_supports=false;
byronyasgur
sumber
1

jika bagian / panel atau inti kontrol, selalu lebih baik untuk menonaktifkan mereka di tempat melepas.

add_action( 'customize_register', 'wp_stackexchange_58932' );
function wp_stackexchange_58932($wp_customize){
    $wp_customize->get_section( 'static_front_page' )->active_callback = '__return_false';
    $wp_customize->get_section( 'custom_css' )->active_callback = '__return_false';
}
Prafulla Kumar Sahu
sumber
1
Hebat tip, saya menggunakannya untuk selalu menampilkan pengaturan static_front_page, bahkan jika tidak ada halaman (secara default hanya menunjukkan ketika ada halaman yang ada di situs)
Larzan
0

Jika Anda menggunakan ini dalam plugin Anda harus menggunakan argumen prioritas seperti 999 dan itu akan berfungsi dalam plugin.

add_action( "customize_register","wpcb_theme_customize_register",999,1);    

function wpcb_theme_customize_register($wp_customize){
   $wp_customize->get_setting('blogdescription')->transport='postMessage';
}
Ravi Shakya
sumber