플러그인 (메인) 파일과 플러그인의 슬러그의 차이점은 워드 프레스 코덱스가 훨씬 더 나은 곳입니다. 너무 최근에 느꼈을 때 (혼란과 혼동 됨) 혼란을 이해합니다.
이것이 워드 프레스 핵심 코드에 대한 "탐정 작업"을 통해 배운 것입니다.
플러그인 파일
이는 WordPress가 플러그인을 식별하고 기록하는 고유 한 방법입니다. 플러그인 디렉토리와 기본 플러그인 파일 (버전, 작성자 등과 같은 다양한 플러그인 세부 사항을 포함하는 파일 헤더가있는 파일)로 구성됩니다.
다음과 같이 보일 것입니다 : your-plugin-directory/main-file.php
활성화 된 플러그인 데이터를 보면 get_option( 'active_plugins' )
)를 보면 WordPress에서 플러그인을 올바르게 식별하기 위해이 플러그인 파일 만 필요하다는 것을 알 수 있습니다.
플러그인의 기본 파일 상대 경로 (있는 wp-content/plugins/
디렉토리에 상대적인 경로)로 생각할 수 있습니다 . 다음과 같이 메인 플러그인 파일의 절대 경로를 "구성"할 수 있습니다 :trailingslashit( WP_PLUGIN_DIR ) . $plugin_main_file
코어 자체는 다음과 같이 플러그인 파일을 생성합니다.
$plugin_main_file = plugin_basename( trim( $plugin_main_file_absolute_path ) );
플러그인 슬러그
플러그인 "슬러그" 는 포스트 슬러그와 같은 플러그인에 대한 일종의 표준화 된 ID 일 것으로 예상합니다. 따라서이 "슬러그"를 사용하여 WordPress 핵심 기능에 제공하고 작업을 수행 할 수 있습니다.
실제로는 아닙니다. 플러그인 슬러그 (또는 중요한 주제)에 대한 참조를 찾기 위해 핵심을 검색하고 거의 아무것도 찾지 못하면 나는 그것에 대해 이해하고 있다고 생각합니다.
유일한 슬러그 는 게시물, 페이지, 분류법 등 고유 한 URL을 통해 액세스 할 수있는 것들입니다. 즉, 게시물 제목과 같은 이름 을 사용 하여 URL 친화적 인 버전을 생성하는 요점은 다음과 같습니다. URL에.
그러나 URL에서 테마 / 플러그인 "슬러그"를 어디에 사용합니까?
개별 WordPress 설치에서는 WP 관리자 나 프론트 엔드에서 그렇게하지 않습니다.
그러나 WordPress 코드 인 WordPress.org 사이트 와 많은 관련이 있습니다. 사람들은 WordPress.org 테마 또는 플러그인 슬러그 가 게시물 또는 페이지 슬러그와 동일하게 작동해야한다고 생각하는 것이 개발자들 사이에서 어떻게 든 공통적이라는 것을 포함하여 두 가지를 구별하는 데 어려움을 겪고 있습니다.
동일한 목적으로 사용되지만 별도의 웹 사이트에서 제공됩니다. WordPress.org에서는 다른 테마의 테마를 식별하고 나머지 플러그인 (예 :https://wordpress.org/plugins/akismet/
)을 .
그러나 개별 WordPress 설치와 관련하여 WordPress.org와 같이 강제 할 권한이 없으므로 동일한 고유성을 보장 할 수 없습니다. 모든 플러그인과 테마가 WordPress.org에서 제공 된 경우 작동 할 수 있지만 다행히도 그렇지 않습니다.
WordPress 코드는 테마 / 플러그인 슬러그와 어떤 관련이 있습니까?
WordPress 핵심 코드 는 테마 / 플러그인 슬러그에 의존하지 않습니다 설치, 활성화, 업데이트, 삭제와 같은 작업을 수행 .
테마의 경우 테마 의 주요 진입 점 은 테마 이므로 테마 디렉토리 에 의존 합니다.style.css
파일 합니다 (다른 CSS 파일을 사용하여 테마 세부 사항 헤더를 보유 할 수 없음).
플러그인의 경우 플러그인은 기본 파일을 호출 할 수 있으므로 플러그인 디렉토리와 기본 플러그인 파일 에 의존합니다 .
코어가 테마 / 플러그인 슬러그를 사용하는 유일한 방법은 WordPress.org 디렉토리에서 테마 및 플러그인을 처리 할 때 입니다. 플러그인 목록 가져 오기, 업데이트 확인, 디렉토리 사용 데이터로 다시보고 등.
플러그인 슬러그 에 대한 마무리 :slug
항목 이있는 플러그인 데이터를 찾을 때마다 99 % 는 플러그인 의 WordPress.org 슬러그를 참조합니다 .
플러그인 식별은 어떻게합니까?
WordPress 설치에서 특정 플러그인을 프로그래밍 방식으로 활성화, 업데이트, 비활성화 또는 삭제하려면 플러그인 파일 을 사용해야 합니다. 플러그인의 기본 파일 에서 다음 과 같이 얻을 수 있습니다 .
$plugin_file = plugin_basename( __FILE__ );
다른 플러그인에서 특정 플러그인 을 타겟팅 하려면 약간의 "guesswork"에 의존해야하기 때문에 상황이 약간 까다로워집니다.
플러그인 이름을 하드 코딩하고 모든 플러그인 목록에서 플러그인을 검색하고 ( get_plugins () 참조 ) 플러그인 파일을 가져올 수 있습니다.
당신은 당신이 반사를 사용할 수있는 플러그인이에 의해 정의 된 클래스 또는 함수를 알고있는 경우 (볼 이 클래스에 대한 대답과 이 하나의 기능을).
이것이 "플러그인 슬러그"를 다루는데 어려움을 겪을 수있는 다른 사람들에게 도움이되기를 바랍니다. 그것은 몇 시간을 절약 할 수 있습니다 :)