WordPress에서 플러그인이 활성화되어 있는지 확인하는 방법 [ 3 WAYS ]
게시 됨: 2020-08-08WordPress 개발자로서 플러그인을 개발할 때 코드에서 가장 일반적인 검사 중 하나는 플러그인 활성화 상태입니다. 플러그인이 활성화되어 있는지 확인해야 하는 몇 가지 이유가 있습니다. 몇 가지를 언급하자면 종속 플러그인이 활성 상태인지 또는 동일한 작업을 수행하는 유사한 플러그인인지 확인할 수 있습니다.
두 경우 모두 대상 플러그인이 활성 상태인지 확인하기 위해 플러그인 기본 파일에 체크를 추가해야 합니다. WooCommerce 클래스를 확장하는 WooCommerce 플러그인을 개발하는 경우의 전형적인 예입니다.
예를 들어 WooCommerce 결제 게이트웨이 플러그인을 개발할 때 플러그인이 활성화된 직후 또는 가급적이면 플러그인 활성화 후크 중에 WooCommerce가 활성화되어 있는지 확인해야 합니다.
WordPress 플러그인이 활성 상태인지 확인
운 좋게도 WordPress 코어에는 특정 플러그인이 활성화되어 있는지 확인하고 true 또는 false를 반환하는 메서드 또는 기능을 사용할 준비가 되어 있습니다.
이 함수는 boolean - true or false
)을 반환하며 특히 활성화 후크 중에 코드에 쉽게 통합할 수 있습니다.
확인 중인 플러그인이 활성화되지 않은 경우 사용자가 플러그인을 설치하도록 헤더 알림을 표시할 수 있습니다.
사용자가 플러그인의 기능과 충돌할 가능성이 있는 다른 플러그인을 비활성화하도록 하려는 경우에도 동일한 기능을 적용할 수 있습니다.
함수 is_plugin_active() 빠른 검토
is_plugin_active()
함수를 빠르게 살펴보고 프로젝트에서 효과적으로 사용하는 방법에 대해 자세히 알아보겠습니다.
is_plugin_active( string $plugin )
이 함수는 플러그인 디렉토리의 플러그인 상대 경로에 대한 경로를 나타내는 문자열 매개변수를 사용합니다.
기능 is_plugin_active( $plugin ) { return in_array( $plugin, (array) get_option( 'active_plugins', array() ) ) || is_plugin_active_for_network( $plugin ); }
woocommerce/woocommerce.php
입니다.
아래 이미지:
is_plugin_active()
함수는 다음 코드 조각을 사용하여 백엔드에서 플러그인이 활성화되어 있는지 확인하는 데 사용할 수 있습니다.
<?php /** * 플러그인을 감지합니다. 관리 영역에서만 사용하십시오. */ if ( is_plugin_active( '플러그인 디렉토리/플러그인 파일.php' ) ) { //플러그인 활성화 }
예를 들어 WooCommerce가 활성화되어 있는지 확인하려면 다음 코드를 사용하여 확인할 수 있습니다.
<?php /** * 관리자 영역에서 WooCommerce 플러그인이 활성화되어 있는지 확인 */ if ( is_plugin_active( '우커머스/우커머스.php' ) ) { //WooCommerce 플러그인이 활성화되었습니다. }
플러그인 기본 파일 및 기본 디렉토리
보시다시피 위의 이미지를 사용하여 설명한 대로 WooCommerce 플러그인 기본 이름과 폴더를 사용했습니다.
플러그인의 기본 이름은 기본 파일인 단일 파일 플러그인에 대한 파일 이름이며 때로는 디렉토리/폴더와 일치하지만 모든 경우는 아닙니다. 일부 플러그인은 다릅니다.
다중 사이트에서 플러그인이 활성 상태인지 확인
WordPress 다중 사이트의 경우 개발자가 플러그인이 다중 사이트 네트워크에서 활성화되어 있는지 확인할 수 있도록 설계된 기능이 있습니다. 기능은 다음과 같습니다.
is_plugin_active_for_network( string $plugin )
이 함수는 is_plugin_active( string $plugin ) 함수처럼 작동하며 플러그인이 WordPress 다중 사이트 네트워크에서 활성 상태인지 확인하는 데 동일한 방식으로 적용할 수 있습니다.
<?php 기능 is_plugin_active_for_network( $plugin ) { if ( ! is_multisite() ) { 거짓을 반환합니다. } $plugins = get_site_option( 'active_sitewide_plugins' ); if ( isset( $플러그인[ $플러그인 ] ) ) { true를 반환합니다. } 거짓을 반환합니다. }
플러그인이 활성 상태인지 확인하는 다른 방법
플러그인이 활성 상태인지 확인하기 위해 사용할 수 있는 다른 방법이 있습니다. 기본 PHP 함수 class_exists 또는 function_exists를 사용하여 확인할 수 있습니다. 이 메소드는 플러그인 또는 함수의 클래스가 각각 존재하는지 확인합니다.
function_exists()를 사용하여 플러그인이 활성 상태인지 확인
플러그인의 기능이나 메소드를 알고 있다면 아래 스니펫과 같이 function_exists
메소드를 사용하여 확인할 수 있습니다.
<?php if( function_exists( '플러그인_기능' ) ) { // 플러그인이 활성화됨 }
class_exists()를 사용하여 플러그인이 활성 상태인지 확인
플러그인의 기본 클래스를 알고 있다면 아래 스니펫에서와 같이 class_exists
메소드를 사용하여 확인할 수 있습니다.
<?php if( class_exists( '플러그인_클래스' ) ) { // 플러그인이 활성화됨 }
아래 코드 조각과 같이 플러그인이 plugins_loaded
후크에서 활성화되어 있는지 확인하기 위해 이러한 방법 중 하나를 후크할 수 있습니다.
<?php /* * 플러그인이 활성 상태인지 테스트 */ 기능 njengah_is_plugin_name_active() { if( class_exists( '플러그인_클래스' ) ) { // 활성이므로 여기에서 논리를 수행합니다. } } add_action( '플러그인 로드', 'njengah_is_plugin_name_active' );
결론
이 게시물에서는 다른 플러그인이나 테마를 개발할 때 플러그인이 활성화되어 있는지 확인하는 다양한 방법을 강조했습니다. 이는 모든 WordPress 개발 작업에 적용할 수 있는 유용한 방법입니다.
유사한 기사
- 플러그인 없이 WordPress Contact Form 7 스팸을 중지하는 방법
- 플러그인을 사용하지 않고 WordPress에서 로그인 페이지를 만드는 방법
- 고객 피드백을 위한 26가지 최고의 WooCommerce 플러그인
- 사이트 보호를 위한 30가지 최고의 WordPress 보안 플러그인
- WooCommerce 결제 페이지에 제거 아이콘을 추가하는 방법
- Woocommerce에서 반품 링크를 변경하는 방법
- Woocommerce에서 주문 ID를 얻는 방법
- 결제 페이지 사용자 지정을 위한 23가지 최고의 WooCommerce 플러그인
- WooCommerce에서 카트 소계를 숨기거나 소계 행을 제거하는 방법
- WooCommerce에 로그인한 후 장바구니로 리디렉션하는 방법
- WordPress 페이지 새로 고침 시 리디렉션하는 방법 » 페이지 새로 고침 PHP 감지
- 실제 예를 사용하여 WordPress에 카테고리 이름을 표시하는 방법
- 장바구니 메시지에 제거하는 방법이 추가되었습니다. WooCommerce
- 예제를 사용하여 WordPress에서 사용자 지정 쿼리 페이지 매김을 만드는 방법
- 장바구니를 건너뛰고 결제 페이지로 리디렉션하는 방법 WooCommerce
- WooCommerce에서 가격 앞에 텍스트를 추가하는 방법 » 가격 앞에 텍스트 추가
- WordPress에서 로그인한 사용자 정보를 얻는 방법
- WordPress에 로그인하지 않은 경우 사용자를 리디렉션하는 방법 » 페이지 리디렉션
- WooCommerce '장바구니에 추가됨' 알림 변경 방법
- WooCommerce에서 재고 여부 텍스트를 표시하는 방법 » 재고 및 재고 없음