업데이트 알림 활성화, 업데이트 비활성화


10

업데이트 비활성화 및 / 또는 업데이트 알림 제거 방법에 대한 많은 질문이 있습니다. 그러나 업데이트를 비활성화하는 모든 솔루션은 업데이트 알림도 비활성화합니다.

그러나 사용 가능한 업데이트에 대한 알림을받는 동안 업데이트 가능성을 비활성화하고 싶습니다.

현재 코덱스를 사용하고 있습니다define( 'DISALLOW_FILE_MODS', true );

이것의 문제점은 업데이트 프로세스뿐만 아니라 알림도 비활성화한다는 것입니다.

편집 : 좋아, 나는 토끼 구멍을 조금 내려 갔다. 핵심 업데이트뿐만 아니라 플러그인과 테마에 대해서만 이야기하고 있음을 분명히해야한다고 생각합니다.

올바르게 이해하면 /wp-admin/includes/update.php:250 에서 함수가 일찍 반환 되기 때문 입니다.

그래서 두 가지 옵션이 있습니다.

  • update_plugins목적을 무너 뜨리는 옵션을 다시 추가하고 부작용을 확신하지 못합니다.
  • admin_init복제 에 내 자신의 후크를 추가 합니다 wp_plugin_update_rows. 나는 그것을 시도했지만 여전히 똑같이 보이지는 않습니다. 그것에 더있는 것처럼 보이며, 이것을하는 매우 깨끗한 방법처럼 느끼지 않습니다.

편집 :이 문제를 다루고 싶은 경우이 문제를 다루는 티켓이 있습니다 : https://core.trac.wordpress.org/ticket/25219


정말? 나는 그것을 사용하고 여전히 업데이트 알림을 볼 수 있습니다. "사이트 관리자에게 알려주십시오"
Stephen Harris

내 질문을 업데이트했습니다.
kraftner

1
왜 시스템과 같은 wpremove 또는 infinitewp를 사용하여 업데이트 알림을 유지하지 않습니까? 이를 통해 여전히 업데이트를 해제 할 수 있습니다. 나는 그것을 직접 사용합니다.
Robert hue

4
아이디어에 대해 Robert에게 감사하지만 이것은 또 다른 의존성이며 대답하지는 않지만 내 문제 / 질문을 우회합니다.
kraftner

답변:


1

하위 테마에 다음 코드를 추가 functions.php하거나 쉽게 활성화 / 비활성화 할 수 있도록 사용자 정의 플러그인으로 패키지하십시오.

add_action( 'wp_before_admin_bar_render', 'wpse161696_toolbar_menu' );
add_action( 'admin_menu', 'wpse161696_updates' );

function wpse161696_toolbar_menu() { // Remove update menu item from the toolbar
    global $wp_admin_bar;
    $wp_admin_bar -> remove_menu( 'updates' );
}

function wpse161696_updates() { // Remove all updating related functions
    remove_submenu_page( 'index.php', 'update-core.php' ); // Remove Update submenu
    // Redirect to Dashboard if update page is accessed
    global $pagenow;
    $page = array(
        'update-core.php',
        'update.php',
        'update.php?action=upgrade-plugin'
        );
    if ( in_array( $pagenow, $page, true ) ) {
        wp_redirect( admin_url( 'index.php' ), 301 );
        // wp_die( 'Updates are disabled.' ); // An error message can be displayed instead
        exit;
    }
}

이것은 당신에게 일할 무언가를 줄 것입니다. 업데이트 알림을 유지하면서 대시 보드 의 사이드 바 및 도구 모음에서 업데이트 링크를 제거합니다 .

그러나 이제 업데이트 는 여전히 각 플러그인 아래에 표시되므로 사용자가 업데이트를 수행 할 수 있습니다.

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

이에 대한 해결책은 CSS를 통해 링크를 숨기는 것입니다. 나는 그 부분을 제대로 작동시킬 수 없었지만이 질문이 너무 오래되어서 시간을 낭비하고 싶지 않았습니다. 나는이 질문에 대한 폐쇄가 필요하다고 느꼈다.


봐 주셔서 감사합니다. 그러나 당신이하고있는 것은 실제로 내가 찾고있는 것이 아닙니다. 우선 메뉴에서 물건을 숨기는 것이 실제로 제거 / 비활성화하지는 않습니다. URL을 알고 있으면 여전히 존재합니다. 리디렉션도 취약합니다. DISALLOW_FILE_MODS업데이트를 차단하는 것 이상을 수행합니다. 또한 리디렉션을 넣는 것은 admin_menu잘못된 위치입니다. 이것은 분명히 수정해야 할 핵심 버그입니다. 다른 모든 것은 더럽고 깨지기 쉬운 핵입니다. 어쨌든 노력해 주셔서 감사합니다;)
kraftner

리디렉션이 정확히 어떻게 취약합니까? 무엇이 다른 것을 만드는가 dirty?
Ethan Jinks O'Sullivan

업데이트가 있습니까? 리디렉션이 깨지기 쉬운 이유를 알고 싶습니다. 예를 들어 더 잘 이해할 수 있습니다.
Ethan Jinks O'Sullivan

돌아 오지 않아서 죄송합니다. "더러운"은 이것이 핵심으로 수정되어야한다는 사실을 의미합니다. 내 말은 그렇지 않다는 사실에 대해 너무 실망했다. 죄송합니다. 마지막으로 나의 주요 관심사는 내가 사용하려는 것입니다 "허약는"이 페이지 URL처럼 너무 많은 가정 WP 변경으로 중단 할 수 있다는 사실을 의미한다 (즉, 힘의 변화 아무것도 경우 예를 들어 반짝 업데이트 그냥 일이, 나도 몰라) DISALLOW_FILE_MODS에 대한 다른 이유도 있습니다 (예 : 에디터 비활성화). 그러나 설정하면 true이 문제가 발생합니다. 죄송합니다. 질문이 명확하지 않았습니다.
kraftner

내가 참조. 따라서이 질문은 핵심 파일을 조정해야하기 때문에 요구 사항으로 해결되지 않습니다.
Ethan Jinks O'Sullivan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.