PHP’de otomatik olarak admin WordPress’e giriş yapın
Bugünün gönderisi, WordPress sitenize nasıl düzgün bir küçük özelliğin nasıl yükleneceğini göstereceğim kısa bir yazı olacak. Bu, güvenli bir şekilde kullanılırsa, çok rahat olabilir. Bu, kullanıcıların girmesi için genel hesaplar sunan WordPress sitelerinde kullanılmak üzere tasarlanmıştır. Örneğin, birçok WordPress arka uç demosunda, yazar, potansiyel müşterilerin ürünleriyle giriş yapmaları ve oynaması için bir ‘demo’ hesabı oluşturacaktır. Çoğu zaman, yazar yalnızca bildirim gösterecektir; Kullanıcı Adı: Demo Şifre: Bu demo biraz yaya. Elbette demonun biraz daha ince ve profesyonel görünmesini sağlayabilir miyiz? Bu kimlik bilgisiyle WordPress Yöneticisini otomatik olarak girmeniz için kısa bir snippet vereceğim. Bu, temanızın dosya işlevine girilebilir veya eklenti dosyasının kendisine girilebilir ve etkinleştirilebilir.
Bu;
Sitenizin anonim kullanıcıların girmesi için genel bir hesabı vardır.
‘Tek tıklama’ giriş bağlantısını istiyorsunuz.
Hızlı ve verimli bir demo yolu sağlayarak, gerekli adımları en aza indirerek ürün demo dönüşümünü en üst düzeye çıkarmak istiyorsunuz.
Ziyaretçileri doğrudan ilgili konuma yönlendirmek istersiniz (örneğin Ayarlar sayfası).
Önemli: Asla bunu gerçek güçte bir hesaba girmek için kullanmayın; örneğin. Yönetici/Editör Hesabı, vb. Bu snippet’i dikkatlice kullanın. Tamam, diğer öğreticimde yaptığım gibi, okuma hayranı olmayanlarınızın hemen deney yapabilmeleri için tam bir kod vereceğim ve önceden açıklama yapacağım. Aşağıdaki görüntüler bağımsız bir eklenti (kişisel tercihim) şeklinde düzenlenmiştir. /* Eklenti Adı: Otomatik Giriş Eklentisi URI: http://hbt.io/ sürüm: 1.0.0 Yazar: Harri Bell-Thomas Yazar Uri : http: // http: // hbt.io/ */ function autologin () {// parametreler ($ _get [‘autologin’] == ‘demo’) {// hesap kullanıcı adı $ olarak giriş yapmak için kullanıcı adı krediler [‘user_login’] = ‘demo’; // $ creds [‘user_password’] = ‘demo’ kullanmak için hesap şifresi; $ kredi [‘hatırla’] = true; $ autologin_user = wp_signon ($ kredi, yanlış); if (! Is_wp_error ($ autologin_user)) başlığı (‘konum: wp-admin’); // yönlendirme konumu}} // başlıklar ve çerezler gönderilmeden hemen önce kod ekle (‘After_setup_theme’, ‘autologin’); Bu kullanımın kullanımı çok kolaydır. Kullanıcı adı ve hesap şifresi eklenti dosyasında (yukarıdaki kod) belirlenir ve yalnızca ziyaret etmeniz gerekir; http://example.com/wp-login.php?autologin=demo
Uzantımız şu anda yalnızca otomatik olarak tek bir hesaba girmeye hazırdır. Farklı hesaplar için farklı bir giriş bağlantısı istiyorsak ne olur? Bu oldukça hızlı ve kolaydır ve tüm fragmanı tekrar tekrar tekrarlamanızı gerektirmez. Çözümümün altına bakın.
/* Eklenti Adı: Otomatik Oturum Açma Eklentisi uri: http://hbt.io/ Açıklama: Jenerik hesaplara hızlı bir şekilde giriş yapmak için uygun otomatik login bağlantıları oluşturun. Değişiklik yapmak için kaynak kodunu yapılandırın. Sürüm: 1.0.0 Yazar: Harri Bell-Thomas Yazar URI: http://hbt.io/ */ // Global VAR’ın Global $ login_parameter, $ hesapları; // Kontrol edilecek parametreler // örn. http://exmaple.com/wp-login.php?param_name=Account $ login_parameter = “autologin”; // hesap kodu bloğu $ hesap // Son hesap kodu bloğu // Gerektiğinde çok sayıda hesap için kod bloğunu düzenleyin ve tekrarlayın // Başka bir örnek iterasyon $ hesabı [] = array (“kullanıcı” => “tcwp”, “pas” => “demo”, ” Konum “=>” wp-admin/? Tcwp-sent-me “,); // Bu işlev hakkında ayrıntılar için önceki örneğe bakın autologin () {global $ login_parameter, $ hesaplar; foreach ($ hesap olarak $ hesap) {if ($ _get [$ login_parameter] == $ hesap [‘kullanıcı’) {$ creds [‘user_login’] = $ hesap [‘kullanıcı’]; $ creds [‘user_password’] = $ hesap [‘pas’]; $ kredi [‘hatırla’] = true; $ autologin_user = wp_signon ($ kredi, yanlış); if (! Is_wp_error ($ autologin_user)) başlığı (‘location:’. $ hesabı [‘location’])); }}} add_ace (‘After_setup_theme’, ‘autologin’);
Özünde, bu temelde aynıdır, ancak yaramaz bir foreach döngüsü artı bir hesap dizisi ile de atılmıştır. Autologin () fonksiyonunun anatomisi, her hesap için kodun tekrarlanması (Loop Foreach kullanılarak) dışında aynıdır. İlgili tüm ayrıntılar artık küresel bir dizide saklanıyor. Yukarıdaki örnek 2 hesap için hazırlanmıştır, ancak çekimlerimiz ihtiyacımız kadar uyum sağlayabilir. Ek bir hesap eklemek için, aşağıdaki kod bloğunu ihtiyacınız olduğu kadar ayarlayın ve ekleyin. // End Hesap Kodu Bloğu Ayrıca parametrenin adını Global Değişken’e de taşıdığımı göreceksiniz: Bu gerekli değil, ancak sadece Autologin () işlevinin tüm sert kod değerlerini silmek için yapıyorum. Sonuç Bu görüntü, ürün demo siteleri gibi hafif kullanım için tasarlanmış basit bir işlevdir, ancak çok daha karmaşık bir giriş senaryosu için kullanılma potansiyeline sahiptir. Kodun geri kalanı yeterince açık olmalı, ancak ne yaptığım veya neden yaptığım hakkında sorularınız varsa, aşağıya bir yorum bırakın veya tweet’im. Geri bildiriminiz / önerileriniz / fikirleriniz varsa, aşağıdaki yorumlar bölümünde bir yorum bırakın!