Ana içeriğe geç

Currency Switcher v0.7.0 — Aboneliğinizi eklenti içinden yönetin

· 3 dakikalık okuma
MaxHandMade
Maintainer

Lisans sekmesinde artık yeni sekmede Polar müşteri portalını açan bir Aboneliği Yönet butonu var. Otomatik yenilemeyi iptal et, kart bilgini güncelle, plan değiştir veya yeniden abone ol — WordPress yöneticisinden çıkmadan. MHM Rentiva v4.32.0'ın snake_case + REST/React paritesi.

Ne değişti

Lisans sekmesinde License Management bölgesinde (Pro lisans aktifken görünür), mevcut iki butona üçüncü ekleniyor:

  1. Aboneliği Yönet — Polar müşteri portalını açar (bu sürüm)
  2. Re-validate Now
  3. Deactivate License

Yeni buton, Polar'a halihazırda kullandığımız aynı lisans sunucusu üzerinden erişir. Sitenizden bakıldığında yeni bir dış servisle iletişim yok. Şema ve imza bütünlüğü RSA ile korunmaya devam ediyor (v0.6.0+ pipeline).

Duruma göre vurgu

Buton, yenilemeye olan uzaklığa göre renk değiştiriyor:

Kalan günRenkNiyet
> 30Standart birincil mavi"Bolca süre var"
≤ 30Sarı"Dikkat — yenileme yaklaşıyor"
≤ 7Kehribar + parlama"Şimdi karar ver"
Süresi dolmuş (0)Kehribar + parlama"Pro'yu sürdürmek için yeniden abone ol"

Portal oturumu üretilirken (kısa bir async çağrı), buton metni "Açılıyor…" olur ve stil hafifçe soluklaşır — tıklamanın kaydolduğunu görsel olarak iletir.

Hata durumu yönetimi

Portal oturumu üretilemezse (sunucu hatası, ağ kesintisi, sayfa açıldıktan sonra lisansın iptal edilmesi), buton kırılmak yerine sekme içi bir bildirim gösterir:

Abonelik yönetimi şu an mümkün değil. Lütfen daha sonra tekrar deneyin veya support@wpalemi.com ile iletişime geçin.

Ham teknik string son kullanıcıya asla sızmaz.

Mimari

  • Yeni public method LicenseManager::create_customer_portal_session(string $return_url): array (Rentiva'nın camelCase'ine snake_case paritesi)
  • Yeni REST endpoint POST /mhm-currency/v1/license/manage-subscription (manage_options yetkili)
  • License.jsx içinde yeni React state + callback, isActive && license.maskedKey koşulunda Deactivate'in solunda render
  • Yeni CSS kuralları compound selector kullanır (.button.mhm-cs-license-warning / .mhm-cs-license-urgent) — mevcut .mhm-cs-license-warning uyarı pilini bozmamak için
  • 4 yeni çevirilebilir string, hepsi Türkçeye çevrildi

Uyumluluk

BileşenGerekli sürüm
mhm-license-serverv1.11.0+ (yeni /customer-portal-session endpoint'i)
mhm-polar-bridgev1.9.0+ (yenileme hatırlatma cron'u)
WordPress6.0+
PHP7.4+

/customer-portal-session endpoint'ine sahip olmayan eski lisans sunucu sürümleri, kırılmak yerine zarif bir sekme içi bildirim döner.

Bu sürümde yok (kapsam dışı)

  • Past-due / dunning bildirimleri — Polar bunları doğrudan e-postayla yönetiyor.
  • Yıllık abonelik yenileme hatırlatmaları — Polar bunları otomatik olarak yenilemeden 7 gün önce gönderiyor.

Aylık abonelere mhm-polar-bridge v1.9.0+ üzerinden 7 gün önceden ek bir hatırlatma e-postası gidiyor; çünkü Polar kısa fatura döngüleri için bunu üretmiyor.

Testler

  • 148 → 158 PHPUnit (+10 yeni, 2 test dosyasında)
  • PHPCS yeni dosyalar: 0 hata (PHPCBF sonrası)
  • PHPStan level 6: 0 hata
  • npm run build: başarılı
  • i18n: yeni string'lerde 0 fuzzy, 4 string tamamen çevrildi