Bir eklentiyi iz bırakmadan kaldırmak
Bir eklentiyi kaldırmak dünyanın en basit işi gibi görünür. Oysa devre dışı bırakmak, kaldırmak ve silmek üç ayrı şeydir ve üçü de eklentinin mağazanızda hiçbir iz bırakmadığını güvence altına almaz.
Devre dışı bırakmak, kaldırmak, silmek: üç ayrı işlem
Devre dışı bırakmak eklentinin çalışmasını durdurur ama hiçbir şeye dokunmaz: dosyaları kalır, tabloları kalır, ayarları kalır ve sunucuda kayıtlıysa zamanlanmış görevleri çalışmayı sürdürebilir. Bir deneme için yararlıdır, kaldırma için değil.
Kaldırmak, eklentinin öngördüğü kaldırma yordamını tetikler. İyi yazılmış bir eklenti orada tablolarını, ayarlarını ve bağlantılarını siler. Kötü yazılmış olan hiçbir şey yapmaz ya da sessizce başarısız olur. WordPress'te ayrım daha da belirgindir: kaldırma yordamı yalnızca eklenti kalıcı olarak silindiğinde çalışır, devre dışı bırakıldığında değil; bunu neredeyse kimse bilmez.
Silmek dosyaları yok eder. Kaldırma önceden yapılmadıysa veriler, onları okuyacak ya da temizleyecek hiçbir kod kalmadan veritabanında durur: yıllar sonra karşımıza çıkan da bunlardır.
Baştan savma bir kaldırmadan sağ çıkanlar
- Okuyacak hiçbir şey kalmadığı hâlde büyümeyi sürdüren veritabanı tabloları
- Her istekte yüklenen ve tüm sayfalara ağırlık yapan yapılandırma satırları
- Sunucuda kayıtlı olup artık var olmayan bir dosyayı çağıran zamanlanmış görevler
- Hiçbir yere gitmeyen menü girdileri ya da yönetim sekmeleri
- Eklenti klasörünün dışına bırakılmış dosyalar: geçersiz kılmalar, kaynaklar, görseller
- Bir yerde kayıtlı kalmış üçüncü taraf hizmet erişim anahtarı
Bir eklentiyi nasıl temiz biçimde kaldırırım
-
Önce yedek: dosyalar ve veritabanı
Kaldırma doğası gereği yıkıcıdır: tabloları siler. Bu tablolar işe yarar bir geçmiş taşıyorsa önce dışa aktarmak gerekir, çünkü sonrasında dışa aktarılacak bir şey kalmaz.
-
Silmeden önce kaldırın
Bu sırayla, asla tersi değil. Önce dosyaları silmek kaldırmayı olanaksızlaştırır ve verileri kalmaya mahkûm eder.
-
Başka yere bırakılanları arayın
Sınıf geçersiz kılmaları, temaya eklenmiş kaynaklar, zamanlanmış görevler, yönetim girdileri. Bunlar kaldırma yordamınca nadiren ele alınır.
-
Önbellekleri boşaltıp ön yüzü yeniden denetleyin
Kaldırılan bir eklenti çoğu zaman önbellek boşaltılana kadar görsel bir iz bırakır ve bir hata yalnızca az ziyaret edilen bir sayfada görünebilir. Her kaldırmadan sonra deneme siparişi veririm.
Geride kalan tabloların özel durumu
Devralınan bir mağazada en sık karşılaştığım budur: uzun süre önce kaldırılmış eklentilerin tablolarını taşıyan, kimi zaman büyük, kimi zaman hiç temizlenmemiş kayıtlarla dolu bir veritabanı. Onları okuyan bir şey kalmadığı için sayfaları doğrudan yavaşlatmazlar, ama yedekleri, geri yüklemeleri ve göçleri ağırlaştırır ve ileriki her müdahalede veritabanının okunmasını bulandırırlar.
Temizlik karmaşık değildir ama dikkat ister: dokunmadan önce her tablonun hangi eklentiye ait olduğunu kesin olarak belirlemek gerekir. Kaldırılmış bir eklentininkine benzeyen bir tablo öneki, hâlâ etkin bir eklentiye ait olabilir. Bu ayıklamayı veritabanının bir kopyasında yaparım ve her silmeden önce tam bir dışa aktarım saklarım.
İlgili sayfalar
-
WordPress veritabanını temizlemek
Yerinde kalmış ayarlar dâhil WordPress tarafındaki yordam.
-
Eklenti envanterinin incelenmesi
Neyin gideceğine karar vermeden önce neyin hâlâ kullanıldığını bilmek için.
-
Müdahaleden önce mağazayı yedeklemek
İstisnasız her kaldırmadan önce alınacak yedek.
-
Cron görevleri çalışmıyor
Kaldırılan bir eklenti döngüsel biçimde başarısız olan bir görev bıraktığında.
İhtiyacınızı bir dakikada anlatın
Size bir anket daha değil, doğrudan bir tahmin sunabilmem için birkaç hedefli soru.