WordPress 플러그인이 설치되었는지 확인하는 방법이 있습니까?
플러그인이 Just installed인지 알 수 있는 방법이 있는지 알고 싶습니다.아직 활성화 되어있어도 상관없지만 플러그인이 설치되어있다면!
당신은 그것을 할 수 있는 좋은 방법을 알고 있나요?
좀 더 구체적으로 말씀드려야겠어요.플러그인이 어디에 있는지, 설치되어 있는지 확인하는 방법도 알고 있습니다.문제는 플러그인이 설치되어 있는지 프로그래밍 방식으로 확인할 수 있는지 여부입니다.
즉, WordPress는 플러그인의 액티베이션에서 원하는 조작을 할 수 있는 register_activation_hook()을 제공하지만 플러그인의 인스톨에 관련된 훅은 없습니다.플러그인 설치를 확인할 수 있는 방법이 있습니까?
지금까지 찾은 가장 좋은 방법은 다음과 같습니다. (이것은 WP 3.5 기준으로 작성되었습니다.)
정보:
register_activation_hook에서 주의할 점은 wp-admin/plugins에서 활성화링크를 클릭하는 사이에 미디어 페이지로 호출된다는 것입니다.php 및 플러그인 활성화 알림을 볼 수 있습니다.이 사실을 알게 된 것은, 이 제품을 사용해 보고 나서입니다.$_GET[ Activate ]링크에서 송신되는 변수입니다.잘 살펴보면 클릭하는 링크와 최종 링크가 약간 다릅니다.이것이 당신이 사용할 수 없는 이유입니다.add_action(), do_action() or add_filter(), ..내부register_activation_hook()트리거합니다.플러그인이 활성화되면 즉시 리디렉션됩니다.
솔루션:
단,add_option이와 같은 후크 처리 중에
/* Main Plugin File */
...
register_activation_hook( __FILE__, function() {
add_option('Activated_Plugin','Plugin-Slug');
/* activation code here */
});
add_action('admin_init','load_plugin');
function load_plugin() {
if(is_admin()&&get_option('Activated_Plugin')=='Plugin-Slug') {
delete_option('Activated_Plugin');
/* do some stuff once right after activation */
}
}
그럼 시작할 수 있을 거야
확인할 수 있는 방법은 여러 가지가 있습니다.
- 플러그인 폴더가 있는지 확인합니다.
- 후크 또는 필터가 정의되어 있는지 확인합니다.
- define()이 정의되어 있는지 확인합니다.이것에 대해 plugins_loaded 훅이 실행될 때까지 기다립니다.
- 옵션 필드에서 플러그인으로 설정된 관련 값을 확인합니다.
- 클래스가 정의되었는지 확인합니다.
언급URL : https://stackoverflow.com/questions/7738953/is-there-a-way-to-determine-if-a-wordpress-plugin-is-just-installed
'programing' 카테고리의 다른 글
| 스프링 부트 시작 시간 최소화 (0) | 2023.03.28 |
|---|---|
| 열에서 중복 항목 찾기 (0) | 2023.03.28 |
| WooCommerce에서 프로그래밍 방식으로 고객 과금 정보 업데이트 (0) | 2023.03.28 |
| 상위 범위에서 ng 포함 양식의 유효성을 어떻게 확인할 수 있습니까? (0) | 2023.03.28 |
| 응답 가로채기에서 요청을 다시 보내려면 어떻게 해야 하나요? (0) | 2023.03.28 |