it-swarm-ko.tech

플러그인 제거는 항상 단어를 사용합니다.

WordPress의 배포 된 인스턴스 내에서 플러그인 수명은 무엇입니까?

즉:

  • 플러그인은 기존 파일을 수정합니까 아니면 WordPress에서 정의 된 확장 점만 사용합니까?
  • 데이터베이스 스키마를 수정할 수있는 플러그인 (예 : 새 열 추가)입니까?
  • wordpress는 플러그인 제거가 항상 WP 원래 상태로 유지되는 것을 어떻게 확인합니까? (그렇습니까?)
4
Marek

짧은 답변:

  • 플러그인은 기존 파일을 수정하지 않고 노출 된 API를 통해 WordPress에 연결합니다.
  • 플러그인은 데이터베이스 스키마를 수정할 수 있습니다.
  • 플러그인은 깨끗하게 제거 할 필요가 없습니다.

플러그인 후크

WordPress 코어에 노출 된 특정 지점에서 플러그인을 WordPress에 연결합니다.

http://codex.wordpress.org/Plugin_API

예를 들어, 함수 get_option()은 데이터베이스에서 사이트 옵션을 읽습니다. 이 함수 내에서 실제 액션이 취해지기 전에 WordPress는 apply_filters( 'pre_option_' . $option, false )을 호출합니다. 옵션 foobar이 주어지면 플러그인은 다음 코드로이 옵션의 실제 값을 무시할 수 있습니다.

function override_foobar( $unused ) {
    return 'My custom value.';
}
add_filter( 'pre_option_foobar', 'override_foobar' ); // add_filter(hook, function)

또한보십시오 http://adambrown.info/p/wp_hooks/ .

데이터베이스를 수정하는 플러그인

플러그인은 WordPress 데이터베이스 사용자가 여전히 해당 권한을 가지고 있다고 가정하고 데이터베이스를 수정할 수 있습니다. 더 복잡한 플러그인 중 일부는 자체 테이블을 추가합니다. 플러그인이 핵심 테이블을 수정할 수있는 가능성이 있습니다. 플러그인을 제거하면 책임감있게 작업을 수행 할 수 있기를 기대합니다.

이것은 플러그인별로 검사해야합니다.

플러그인 제거하기

deactivate_plugins() 함수는 do_action( 'deactivate_' . trim( $plugin ) ) 작업을 호출합니다. 플러그인이 비활성화되었을 때 특정 상황이 발생해야하는 경우 플러그인은이 작업에 연결해야합니다. 내 경험에 의하면 몇 가지 플러그인은 많은 비활성화 제거를합니다. 다시 활성화 될 경우를 대비하여 차가운 저장소에 설정을 저장합니다.

15
Annika Backstrom

WordPress의 플러그인은 코드에서 말하는대로 작동합니다. 귀하의 질문에 구체적으로 대답하려면,

  1. 그들은해서는 안되지만 핵심 파일을 수정하는 것을 막을 수있는 방법은 없습니다.
  2. 그들은 WordPress 자체가 할 수있는 어떤 방식 으로든 데이터베이스와 완전히 인터페이스 할 수 있습니다.
  3. 워드 프레스는 플러그인 설치 제거가 전체 설치를 파괴하지 않는지 확인하지 않습니다. 플러그인 작성자가 모든 기능을 삭제하도록 제거 기능을 설정 한 경우 플러그인 작성자가이를 수행합니다.

그래서 이것은 질문을 남겨 둡니다. 플러그인 작성자가 귀하의 신뢰를 배제하고 귀하의 사이트에 악의적 인 것을 수행한다면 무엇을 할 수 있습니까? wp-content 디렉토리와 데이터베이스 전체를 정기적으로 백업하는 것이 사이트에서 발생하는 일 (예 : 데이터 손실, 해킹 공격, 플러그인 불량 등)에서 복구 할 수있는 최상의 방법입니다. .

3
John P Bloch

직접 응답 : 아니오

플러그인은 PHP code로 할 수있는 모든 것을 할 수 있습니다.

1
User