기존 맞춤 설정 도구 설정을 어떻게 제거합니까?


답변:


17

파티에 늦었지만 트릭을 수행합니다.

$wp_customize->remove_control('blogdescription');

위에서 제안한대로 전체 섹션이 아닌 해당 컨트롤 만 제거하려고합니다.


1
설정도 제거해야합니다 : $ wp_customize-> remove_setting ( 'blogdescription')
mimarcel

현재 거기에있는 저장된 값도 제거됩니까? 기존 데이터가있는 기존 설정 / 컨트롤을 삭제하려고하지만 데이터가 여전히 콜백되는 문제가 있습니다. wordpress.stackexchange.com/questions/329343/…

10

이 코드를 사용하여 워드 프레스 테마에서 사전 확장 사용자 정의 설정을 제거하십시오.

여기에 이미지 설명을 입력하십시오

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");

}

5

WP_Customize_Manager 클래스에라는 함수가 있다는 것을 알았습니다 remove_section(). 당신의 함수에 푹 customize_register당신은 할 수 있습니다 :

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

섹션의 아코디언 제목 표시 줄을 검사하면 섹션의 ID (예 : 'nav')를 찾을 수 있습니다. 포함 <li>태그 의 ID를 확인한 후 문자열의 일부입니다 "customize-section-". IE :

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

-아이디는 "static_front_page"


그것은 내 솔루션보다 나아 보여 진드기를 줄 것입니다-테스트하지는 않았지만 당신이 가지고 있다고 생각합니다 ...하지만 title_tagline을 얻지 못합니다.
byronyasgur

@byronyasgur yep, 복사 파스타 오류로 수정되었습니다. 감사!
제시카

실제로 이것은 정답이 아닙니다. 사이트 제목과 태그 라인이 모두 포함 된 전체 섹션 이 제거 됩니다. 문제는 태그 라인 만 요구하는 것입니다. @byronyasgur에 의해 아래의 답변을 봐
BFTrick

2

에 accoring에 OTTO

섹션에 추가 할 수있는 마지막 것은“theme_supports”옵션입니다. 테마가 무언가를 지원하지 않으면 메뉴가 나타나지 않습니다. 이 코드를 테마 자체에 넣는 경우 테마가 지원하는 것을 이미 알고 있으므로 이해가되지 않습니다. 핵심은 테마가 지원하지 않는 경우이를 사용하여 머리글 및 배경 옵션을 표시하지 않습니다.

그래서 함께

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

... 그리고 다음 코드가 작동한다는 것을 발견했습니다. 나는 falsetheme_supports에 넣었습니다 ... 내가 정말로 무엇을 넣어야할지 모르겠습니다 ... 아마도 조금 더 전문가가 이것을 개선 할 수 있습니다.

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

1

섹션 / 패널 또는 제어 코어 인 경우 제거하는 대신 항상 비활성화하는 것이 좋습니다.

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';
}

1
좋은 팁, 나는 페이지가 없어도 항상 static_front_page 설정을 표시하는 데 사용했습니다 (기본적으로 사이트에 페이지가 존재하는 경우에만
표시됨

0

플러그인에서 이것을 사용하는 경우 999와 같은 우선 순위 인수를 사용해야하며 플러그인에서 작동합니다.

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

function wpcb_theme_customize_register($wp_customize){
   $wp_customize->get_setting('blogdescription')->transport='postMessage';
}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.