WordPress'te Eklentinin Etkin Olup Olmadığı Nasıl Kontrol Edilir [ 3 YOL ]
Yayınlanan: 2020-08-08Bir WordPress geliştiricisi olarak, bir eklenti geliştirirken kodunuzdaki en yaygın kontrollerden biri, eklenti aktivasyonunun durumudur. Bir eklentinin aktif olup olmadığını kontrol etmeniz için birkaç neden vardır. Birkaçından bahsetmek gerekirse, bağımlı bir eklentinin aktif olup olmadığını veya aynı şeyi yapan benzer bir eklentinin olup olmadığını kontrol edebilirsiniz.
Her iki durumda da, hedeflenen eklentinin etkin olup olmadığını kontrol etmek için eklenti temel dosyanıza kontrolü eklemeniz gerekecektir. Klasik bir örnek, WooCommerce sınıflarını genişleten bir WooCommerce eklentisi geliştirirken.
Örneğin, WooCommerce ödeme ağ geçidi eklentisi geliştirirken, eklentiniz etkinleştirildikten hemen sonra veya tercihen eklenti etkinleştirme kancası sırasında WooCommerce'in etkin olup olmadığını kontrol etmeniz gerekir.
Bir WordPress Eklentisinin Etkin Olup Olmadığını Kontrol Edin
Neyse ki, WordPress çekirdeği, belirli bir eklentinin etkin olup olmadığını kontrol eden ve doğru veya yanlış döndüren, kullanıma hazır bir yöntem veya işleve sahiptir.
Bu işlev bir boolean - true or false
ve bunu özellikle etkinleştirme kancası sırasında kodunuza kolayca dahil edebilirsiniz.
Kontrol ettiğiniz eklenti aktif değilse, kullanıcının eklentiyi kurması için bir başlık bildirimi görüntüleyebilirsiniz.
Aynı işlevi, kullanıcının eklentinizin işleviyle çakışması muhtemel başka bir eklentiyi devre dışı bırakmasını istediğinizde de uygulayabilirsiniz.
İşlev is_plugin_active() Hızlı Gözden Geçirme
Projenizde etkin bir şekilde nasıl kullanılacağı hakkında daha fazla bilgi edinmek için is_plugin_active()
işlevine hızlıca bakalım.
is_plugin_active( string $plugin )
Bu işlev, eklentiler dizinindeki eklentinin göreli yolunun temsili olan bir dize parametresi alır.
function is_plugin_active( $eklenti ) { return in_array( $plugin, (dizi) get_option( 'active_plugins', array() ) ) || is_plugin_active_for_network($eklenti); }
woocommerce/woocommerce.php
.
aşağıdaki resim:
is_plugin_active()
işlevi, aşağıdaki kod parçacığını kullanarak eklentinin arka uçta etkin olup olmadığını kontrol etmek için kullanılabilir
<?php /** * Eklentiyi algıla. Yalnızca Yönetici alanında kullanım içindir. */ if ( is_plugin_active( 'eklenti-dizini/eklenti-dosyası.php' ) ) { //eklenti aktif }
Örneğin, WooCommerce'in aktif olup olmadığını kontrol etmek istiyorsanız, aşağıdaki kodu kullanarak kontrol edebilirsiniz:
<?php /** * Yönetici alanında WooCommerce Eklentisinin etkin olup olmadığını kontrol edin */ if ( is_plugin_active( 'woocommerce/woocommerce.php' ) ) { //WooCommerce eklentisi etkinleştirildi }
Eklenti Temel Dosyası ve Temel Dizin
Gördüğünüz gibi WooCommerce eklentisi basename ve bahsettiğim klasörü yukarıdaki görseli kullanarak resimli olarak kullandım.
Bir eklentinin temel adı, ana dosya olan tek bir dosya eklentisinin dosya adıdır ve bazen dizin/klasörle eşleşir, ancak her durumda değil - bazı eklentiler farklıdır.
Eklentinin Multisite'da Etkin olup olmadığını kontrol edin
WordPress multisite için, geliştiricilerin eklentinin multisite ağında etkin olup olmadığını kontrol etmesine yardımcı olmak için tasarlanmış bir işlev vardır. İşlev:
is_plugin_active_for_network( string $plugin )
Bu işlev, tıpkı is_plugin_active( string $plugin ) işlevi gibi çalışır ve eklentinin WordPress çoklu site ağında etkin olup olmadığını belirlemek için aynı şekilde uygulanabilir.
<?php function is_plugin_active_for_network( $eklenti ) { if ( ! is_multisite() ) { yanlış döndür; } $plugins = get_site_option('active_sitewide_plugins'); if ( isset( $eklentiler[ $eklenti ] ) ) { true döndür; } yanlış döndür; }
Eklentinin Etkin olup olmadığını Kontrol Etmenin Diğer Yolları
Bir eklentinin etkin olup olmadığını kontrol etmek için kullanabileceğiniz başka yollar da vardır. Yerel php işlevlerini class_exists veya function_exists kullanarak kontrol edebilirsiniz. Bu yöntemler, sırasıyla eklentinin sınıfının mı yoksa işlevin mi var olduğunu kontrol eder.
Eklentinin Etkin olup olmadığını Kontrol etmek için function_exists() öğesini kullanma
Bir eklentinin işlevini veya yöntemini biliyorsanız, aşağıdaki kod parçasında olduğu gibi function_exists
yöntemini kullanarak kontrol edebilirsiniz:
<?php if( function_exists( 'plugin_function' ) ) { // Eklenti aktif }
Eklentinin Etkin olup olmadığını Kontrol etmek için class_exists() kullanma
Bir eklentinin ana sınıfını biliyorsanız, aşağıdaki snippet'te olduğu gibi class_exists
yöntemini kullanarak kontrol edebilirsiniz:
<?php if( class_exists( 'plugin_class' ) ) { // Eklenti aktif }
Aşağıdaki kod parçacığında olduğu gibi plugins_loaded
kancasında eklentinin etkin olup olmadığını kontrol etmek için bu yöntemlerden birini bağlayabilirsiniz:
<?php /* * Bir eklentinin Aktif olup olmadığını test edin */ function njengah_is_plugin_name_active() { if( class_exists( 'Plugin_Class' ) ) { // Aktif, yani mantık burada } } add_action('plugins_loaded', 'njengah_is_plugin_name_active');
Çözüm
Bu yazıda, başka bir eklenti veya tema geliştirirken bir eklentinin etkin olup olmadığını kontrol etmenin çeşitli yollarını vurguladık. Bunlar, tüm WordPress geliştirme görevlerinize uygulayabileceğiniz kullanışlı yöntemlerdir.
Benzer Makaleler
- Eklenti Olmadan WordPress İletişim Formu 7 Spam Nasıl Durdurulur
- Eklenti Kullanmadan WordPress'te Giriş Sayfası Nasıl Oluşturulur
- Müşteri Geri Bildirimi için En İyi 26 WooCommerce Eklentisi
- Sitenizi Korumak için En İyi 30 WordPress Güvenlik Eklentisi
- WooCommerce Ödeme Sayfasına Kaldır Simgesi Nasıl Eklenir
- WooCommerce'de Mağazaya Dönüş Bağlantısı Nasıl Değiştirilir
- WooCommerce'de Sipariş Kimliği Nasıl Alınır
- Ödeme Sayfası Özelleştirme için En İyi 23 WooCommerce Eklentisi
- WooCommerce'de Sepet Ara Toplamını Gizleme veya Ara Toplam Satırını Kaldırma
- WooCommerce'de Giriş Yaptıktan Sonra Sepete Nasıl Yönlendirilirsiniz?
- WordPress Sayfası Yenilendiğinde Nasıl Yönlendirilir » Sayfa Yenileme PHP'yi Algıla
- Pratik Bir Örnek Kullanarak WordPress'te Kategori Adı Nasıl Görüntülenir
- Nasıl Kaldırılır Sepetinize Eklendi Mesajı WooCommerce
- Bir Örnekle WordPress'te Özel Sorgu Sayfalandırması Nasıl Oluşturulur
- Sepeti Atlama ve Ödeme Sayfasına Yönlendirme WooCommerce
- WooCommerce'de Fiyattan Önce Metin Nasıl Eklenir » Fiyattan Önce Metin Eklenir
- WordPress'te Oturum Açma Kullanıcı Bilgileri Nasıl Alınır
- WordPress'te Oturum Açmamışsa Kullanıcı Nasıl Yönlendirilir » Sayfa Yönlendirme
- WooCommerce 'Sepete Eklendi' Bildirimi Nasıl Değiştirilir
- WooCommerce'de Stok Durumu Metni Nasıl Görüntülenir » Stokta ve Yok