wp-content / install.php는 드롭 인입니까?


9

Drop-in 플러그인 사용법 및 사용 방법에 대한 설명서 나 토론을 찾을 수 없습니다.
이 Q & A, 설치시 컨텐츠 채우기 에서 질문이 제기되었습니다 .

wp-content/install.php플러그 가능 기능을 재정의 하는 파일이 wp_install_defaults드롭 인 플러그인입니까?

내 연구 결과

다음 목록은 hakre의 기사 ( 인터 웹의 다른 모든 사본의 출처 인 것으로 보입니다 )에서 가져온 입니다.

File                Type of Plugin                          Loaded                          Context
advanced-cache.php  Advanced caching plugin.                on WP_CACHE value               Single
db.php              Custom database class                   always                          Single
db-error.php        Custom database error message           on error                        Single
install.php         Custom install script                   on install                      Single
maintenance.php     Custom maintenance message              on maintenance                  Single
object-cache.php    External object cache                   always                          Single
sunrise.php         Executed before Multisite is loaded     on SUNRISE value                Multi
blog-deleted.php    Custom blog deleted message             on deleted blog                 Multi
blog-inactive.php   Custom blog inactive message            on inactive blog                Multi
blog-suspended.php  Custom blog suspended message           on archived or spammed blog     Multi

Source: Data taken from global function _get_dropins() in wp-admin/includes/plugin.php.

코덱스에서 드롭 인은 다음과 같이 정의됩니다 .

구체적인 PHP 파일


처음에는 [wp-hackers] 목록에 아무것도 없습니다. 그리고 "드롭 인 + 워드 캠프"를 검색하는 것만 으로이 관련성 강조되었습니다 .

워드 프레스의 가장 큰 장점 중 하나는 플러그인 시스템입니다. 다가오는 2.1 릴리스 에는 드롭 인 플러그인으로 할 수있는 것이 거의 없습니다 . 따라서 WordPress를 CMS로 쉽게 사용하고 사용자 지정 내용을 기본 코드 라인과 별도로 유지할 수 있습니다. 이는 업그레이드 및 유지 보수를 단순화합니다.


1
그냥 의미론 아닌가요? 영어가 모국어가 아니기 때문에 "드롭 인 플러그인"과 "플러그인"의 암시 적 구분을 보지 못합니다
Mark Kaplun

@MarkKaplun : 아니요, 아니요, 의미론이 아닙니다. 문제는 세 번째 문장에 : WP - 콘텐츠 / install.php 파일 파일은 그 재정의 [...]
brasofilo

당신이 원하는 것을 얻지 못합니다. 이미 드롭 인은 플러그인 헤더없이 mu-plugin처럼로드 된 파일이라는 것을 알고 있습니다. 무엇입니까?
fuxia

@toscho, 요점 : Wyck은 그것이 wp-content/intall.php드롭 인이 아니라고 말했다 . 그의 지식을 믿기 때문에 나는 그것을 명확히하기 위해 질문이 필요하다고 생각했습니다. 그렇지 않다면 기꺼이 삭제하겠습니다. 다른 논쟁적인 주제를 만들고 싶지 않습니다.
brasofilo

즉 더 나은 질문을 할 것입니다 : install.php드롭이 -에?
fuxia

답변:


9

당신의 질문에 대답하기 위해

사실, 그 파일에서 덮어 쓸 수있는 다른 많은 기능이 있습니다. "wp-admin / includes / upgrade.php"의 첫 번째 줄에 포함되어 있으며, 재정의되는 많은 기능이 있습니다.

불행히도 드롭 인 플러그인에 관한 정보가 너무 많지 않지만 몇 가지 사항을 알려 드리겠습니다.

  1. 워드 프레스 관리자를 통해 패키지 및 설치 할 수 없다는 점에서 일반 플러그인과 다릅니다.
  2. 그것들을 사용한다는 것은 소유자가 올바른 위치에 플러그인을 수동으로 업로드했음을 의미합니다. 따라서 소유자가 작성하고 추가했다고 가정합니다.
  3. 이 플러그인들은 특정 워드 프레스 사이트에 특정한 코드만을 가지고 있습니다.
  4. 소유자가 추가 했으므로 관리자 패널에서 제어 (활성화 / 비활성화) 할 수 없습니다. include 문은 코어에 하드 코딩됩니다.
  5. 파일 헤더가 필요하지 않습니다.

요약하면, 해당 기능이 워드 프레스에 의해로드 될 때마다 포함 (있는 경우)되도록 하드 코딩 된 PHP 파일입니다.

그것들을 사용하려면 "wp-content"디렉토리 안에 그 이름으로 php 파일을 생성하면 자동으로 포함됩니다. 물론이 파일에는 필요에 따라 여러 개의 다른 파일이 포함될 수 있습니다.

편집하다

toscho가 지적했듯이
1) 드롭 인 (사용 가능한 경우)도 다른 모든 플러그인과 함께 wordpress 관리자 패널에 나열됩니다. 다른 플러그인과 달리 플러그인을 비활성화 할 수는 없습니다.
2) Wordpress 자체를 업그레이드 할 때 (핵심 업그레이드) "wp-content"디렉토리를 변경하지 않습니다. 이러한 이유로 이러한 플러그인은 업그레이드간에 변경되지 않습니다.
3) wp-config.php"wp-content"디렉토리를 다른 것으로 변경하기 위해 상수를 정의 할 수 있습니다 . 정의해야 할 상수는 WP_CONTENT_DIR입니다. 또한 플러그인 디렉토리와 같은 다른 상수의 기본값도 변경되므로 필요한 경우이를 관리해야합니다.


2
WordPress 업데이트 후에도 추가 할 수 있으며 플러그인 관리 페이지에 표시되며에서 추가 드롭 인 경로를 정의 할 수 있습니다 wp-config.php.
fuxia

좋은 요약, Mridul. 방금 핵심을 검색 했으며 예, 코드의 내용을 거의 영어로 번역하고 있습니다.
brasofilo

1

어떻게 wp-content/install.php작동;

WP 설치 프로세스가 실행됩니다 wp-admin/install.php

설치의 39 행에서 실행 wp-admin/includes/upgrade.php

require_once( dirname( __FILE__ ) . '/includes/upgrade.php' );

이 파일은 다음 install.php 파일 생성 된 사용자를 확인 첫째 ,이 코드에 의해 볼 때 기본 설치와 그렇지 않은 경우를 먹었습니다;

( file_exists(WP_CONTENT_DIR . '/install.php') )
    require (WP_CONTENT_DIR . '/install.php');

이 워크 플로는 어떤 방식으로 install.php드롭 인에 영향을 미칩니 까?
brasofilo

그것은 여전히 ​​"드롭-인"입니다. mu-plugin나는 위에서 언급 한 것과 구별하기를 원 했습니다. 혼란을 드려 죄송합니다. Mridul Aggarwal의 것이 맞습니다.
Wyck

문제 없음, 나는 정말로 혼란스러워했다. 그러나 시스템이 Must-use one kind 및 Drop-in other kind를 호출하면 규칙을 준수해야합니다. 건배 :)
brasofilo

나중에 명명 규칙이 더 명확해야하지만 대부분의 사람들은 관습에 대해 알지 못합니다install.php
Wyck
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.