PHP 8 Hakkında WordPress Kullanıcılarının Bilmesi Gerekenler - Technopat
Sonuç bulunamadı
Bütün Sonuçları Göster
Teknoloji tutkunu Technopatların ortak adresi: Technopat.net
  • Haber
  • Yapay Zeka
  • Tavsiyeler
  • Oyun
  • Video
  • Teknoloji
    • Mobil
    • Yazılım
    • Elektronik Alışveriş Fırsatları
    • Pratik
    • Ev Teknolojileri
    • Makale
    • Güvenlik
    • Ekonomi
    • İnternet
    • Giyilebilir Teknoloji
    • Sağlık
    • Yazıcı
    • Sosyal Medya
    • Otomobil
      • Elektrikli Otomobil
  • Sosyal
Teknoloji tutkunu Technopatların ortak adresi: Technopat.net
  • Haber
  • Yapay Zeka
  • Tavsiyeler
  • Oyun
  • Video
  • Teknoloji
    • Mobil
    • Yazılım
    • Elektronik Alışveriş Fırsatları
    • Pratik
    • Ev Teknolojileri
    • Makale
    • Güvenlik
    • Ekonomi
    • İnternet
    • Giyilebilir Teknoloji
    • Sağlık
    • Yazıcı
    • Sosyal Medya
    • Otomobil
      • Elektrikli Otomobil
  • Sosyal
Sonuç bulunamadı
Bütün Sonuçları Göster
Teknoloji tutkunu Technopatların ortak adresi: Technopat.net

Anasayfa - Makale - PHP 8 Hakkında WordPress Kullanıcılarının Bilmesi Gerekenler

PHP 8 Hakkında WordPress Kullanıcılarının Bilmesi Gerekenler

20 Aralık 2020 - 15:30
- Makale
wordpress, php 8

PHP 8.0 ile beraber gelen yeniliklerin bir kısmını ve kullanmaya başlamadan önce WordPress kullanıcılarının bilmesi gerekenleri anlatıyoruz.

26 Kasım 2020 tarihinde piyasaya sürülen PHP 8.0 sürümü, Wordpress sitelerinin güç aldığı PHP’nin çıkan en son sürümü. Dildeki bu yeni güncelleme, geliştiricilerin işine yarayacak birçok yeni özellik ve uzun vadede güvenliği artıracak değişikliklerle beraber geldi.

Bu değişikliklerden en belirgin olanı bazı işlevlerin kaldırılması. PHP 8 sürümünde bir önceki sürümlere nazaran çok daha büyük değişiklikler bulunuyor. Bu yazımıda da WordPress güvenliği konusunda yıllarca sektörde var olan ve eklentileriyle bilinen Wordfence Security’nin makalesinde belirttiği hassas noktalara, önerilere göz atalım.

PHP 8’e Hemen Yükseltmeli Miyim?

Kesinlikle hayır.

Halihazırdaki WordPress’inizi stabil bir destek sunulana kadar yükseltmemelisiniz. WordPress geliştiricilerinin 18 Kasım tarihinde yaptıkları söyleşiye göre 5.6 sürümüyle beraber PHP 8 ile beta şeklinde uyum sağlanması planlanıyor. Şu anda da yakın zamanda yayınlanan en güncel olan sürüm WordPress 5.6 ve PHP 8 desteği gelmiş olsa bile birtakım sorunlar mevcut. Beta olarak piyasaya sürülen sürümde temel WordPress işlevleri çalışsa bile bir süreliğine bilinmedik hatalar, temalarda bozulma gibi birtakım sorunlar yaşanabilir. Bunu WordPress de hesaba katarak hataların olabildiğince çabuk test edilip kapatılabilmesi için PHP 8 kullanarak ek testler yapmaya başladı.

Halihazırda WordFence Security eklentilerinden birisini kullanıyorsanız, PHP 8 ile uyum için çalışmalar devam ediyor. Geliştiricilerin kendi blog sayfasından yapmış oldukları açıklamaya göre, kısmi uyumluluk ve destek sunulacak fakat stabil bir kullanım ve tam anlamıyla uyumluluk sağlanabilmesi için ek testler uygulanması gerekiyor..

Bütün bunların dışında birçok Wordpress tema ve eklentisinin PHP 8 sürümüyle hemen uyumlu olmayacağını üstünü çizerek belirtmek isteriz. Normal bir kullanımda görünüşte hiçbir sorun gözükmese bile arka planda olumsuz şeyler gerçekleşiyor olabilir. Öte yandan WordPress’in 5.7 sürümünün PHP 8 ile tam uyumlu olmasını bekliyoruz ki Mart 2020’de çıkacak bu sürüme kadar muhtemelen PHP 8.0.1 sürümü de çıkmış ve ilk hatalar giderilmiş olacak.

PHP 8 Hangi Önemli Değişiklikleri İçerir?

Geliştiricilerin bir kısmı uzun zamandır PHP’nin bazı diğer alternatiflere kıyasla çok daha güvensiz olduğunu düşünüyordu. Bu halen tartışmaya açık bir mevzu zira herhangi bir programlama dilinin/web programlama dilinin güvenlik açısından ne derece güvenli veya güvensiz olduğunu anlamak zor. Yine de PHP 8’den önceki PHP sürümlerine bakıldığında, yeni sürüm eskilerde olduğu gibi bazı kod hatalarına karşı toleranslı davranmıyor. Eski sürümlerde küçük hatalar olması durumunda hatanın ne olduğuna bağlı olarak kodlar çalışmaya devam edebiliyordu. Bundan ötürü güvenliğin biraz daha sıkılaşmış olduğu düşünülüyor.

PHP 8 sürümü ayrıca diğer PHP sürümlerine nazaran çok daha sert bir yazım türü kullanmaya başlıyor. Fonksiyonların kabul ettiği ve çalıştırdıkları döngülere artık daha çok dikkat edilmeye başlanıyor ve kullanıcıdan alınan girdilerin nasıl değerlendirildiği biraz daha önem kazanıyor. Daha önceleri çeşitli bildirimler halinde kendisini belli eden sorunlardan ziyade uyarılar ortaya çıkıyor. Uyarılar halinde çıkanlar ise artık doğrudan hata olarak gösteriliyor. Böylece kod yapısı daha temiz ve iyi bir hale getirilmiş oluyor.

Özetle PHP 8 sürümünün diğer sürümlere nazaran pek de esnek bir yapıya sahip olmadığını söyleyebiliriz. Önceki sürümlerde hatalı kodun çalıştırılması bu kadar zor değildi.

Ayrıca PHP 7.x sürümüyle tedavülden kaldırılan bazı fonksiyonlar ve çeşitli özellikler bu sefer PHP 8 ile beraber daha kesin bir şekilde tamamen kaldırılıyor:

  • $php_errormsg değişkeni
  • create_function() fonksiyonu
  • mbstring.func_overload ini yönergesi
  • real tip
  • allow_url_include ini yönergesi
  • restore_include_path() fonksiyonu
  • each() fonksiyonu
PHP 8
PHP 8 sürümü 24 Kasım 2020’de çıkmıştı.

WordPress Eklentileri ve Temalar Nasıl Etkilenecek?

Bu değişkenler, fonksiyonlar ve yönergelerin artık pek kullanılmadığını bilsek de, Wordfence tarafından yapılan araştırmaya göre create_function kullanan ve milyonlarca web sitesi tarafından kullanılan popüler 5.000 kadar WordPress eklentisi mevcut. Bu durumda yükseltme yapmanız durumunda sorun yaşama ihtimaliniz oldukça yüksek. Yine de bazı durumlar için eski PHP sürümleriyle uyumluluk adına bunların kullanımına izin verilmiş olabilir. Her şeye rağmen birçok eklenti maalesef PHP 8’e geçişte kapsamlı şekilde düzenlenmezse, sorunlara neden olacak.

Çok az sayıdaki eklentiler ve temalar da genellikle üçüncü taraf kütüphanelerden yararlanır. WordPress geliştiricileri uyumluluk için bunların da güncellenmesini bir süre daha bekleyebilir. Eğer bu kütüphaneler PHP 8 ile uyumlu olacak şekilde güncellenmez ise, bu kitaplıkların alternatiflerini kullanmak hatta ve hatta PHP 8 uyumlu olması için temalarla eklentileri sıfırdan yazmak gerekebilir.

Yoast SEO eklentisinin geliştiricileri tarafından bu geçiş sürecinde diğer geliştiriciler tarafından neler yapılması gerektiğine dair birtakım öneriler ve uyumluluk raporları hazırlandı. Eğer bir geliştiriciyseniz mutlaka okumanızı öneriyoruz.

PHP 8 Hakkındaki Güvenlik Endişeleri

Güvenlik açısından sorun çıkartan birçok fonksiyon ve özellik PHP 8 ile daha önceki paragraflarda belirtildiği gibi kaldırılmış olsa da, insan elinden çıkan her şeyde olduğu gibi çeşitli hataları ve kusurları da hesaba katmak gerekiyor. Her yeni sürümün çıkmasının ardından bu tarz endişeler dile getirilir.

PHP, “Type Juggling” adı verilen bir şeye müsaade ediyor. Bu özellik sayesinde sayı içeren dizeleri tam sayı veya ondalık sayılarla aynı şekilde ele almaya yarayan ve katı karşılaştırmaya yarayan operatörü === yerine == kullanılması durumunda bu iki farklı tür arasında matematiksel karşılaştırma yapılabilir demektir. Bu birçok geliştirici için özünde faydalı olabilirken, bazen de yazılımda alışılmamış davranışların meydana gelmesine neden olabilir.

Type Juggling’in neden soruna yol açabileceğine WordFence makalesinde güzelce değinmiş. Klasik bir örnek olan 0==”blah” değeri true olarak dönerken, PHP 8 düzeltme amacıyla bu tarz davranışları düzene sokmaya çalışırken hatalara neden olabilir. Örneğin 0==”0blah” false olarak döndürülebilir.

Temelde bu güvenliği artıracaktır fakat standart olmayan cookie ile tanımlama bilgilerini kullanarak parola kontrollerini atlamak amacıyla PHP’nin “Type Juggling” özelliğinin davranışı kullanılabilir ve bu şekilde kullanılabilecek bir dizi istismar var. Ek olarak çok sayıda eklenti veya çeşitli ek bileşen kritik işlevler için gevşek karşılaştırmalardan yararlanıyor. Bunlar genelde PHP 8 sürümüne yükseltme sonrası kullanılmaya devam edilecek fakat bu durumdan ötürü yeni güvenlik açıkları da ortaya çıkabilir.

Ayrıca PHP 7.x sürümünden 8’e geçiş esnasında eklenti geliştiricileri ve bazı tema geliştiricileri kod güncellemek için uğraşmak yerine, desteği keserek atıl halde bırakabilir. Bu yaygın temalardan ve eklentilerden çok, daha az web sitesi tarafından kullanılan tema ve eklentilerde görülebilir. Geliştiricisi tarafından terk edilen eklentilerde ve temalarda çıkacak olan güvenlik açıkları genellikle düzeltilmez. Bu da büyük bir güvenlik riskidir.

Diğer bir güvenlik riski de geliştiricilerden çok barındırıcı ve site sahipleri yüzünden ortaya çıkar. Eski eklentilerini sağlıklı bir şekilde çalıştırmak için web sitesi sahipleri güvensiz olan eski PHP sürümlerinde kalmaya devam edebilirler. Bütün bunların dışında bazı zararlı yazılımlar niyetlerini gizlemek amacıyla PHP’nin hata toleransı özelliğiyle kaldırılmış olan fonksiyonlarına da güveniyor. Bu tarzdaki zararlı dosyalar PHP 8 kurulu ortamda ya çalışmayı bırakır ya da kendisini ele verir. Ya da zaman içerisinde kötü amaçlı yazılım yazarları tarafından uyumlu olacak şekilde geliştirilmeye devam edilir.

PHP 8 ile Gelen Performans Değişiklikleri

PHP 8 ile beraber gelen heyecan verici bir diğer özellik ve gelişme ise JIT veya tam adıyla “Just In Time / Tam Zamanında” derleme. PHP bildiğiniz gibi yorumlanan bir dil. Yani derlenmez, aksine çalışma esnasında makine koduna çevrilir. Örneğin bu şekilde çalışan diğerlerinden örnek bir programlama dili ise Python’dur.

JIT özelliği sayesinde sıkça kullanılan kodun kayıtları tutulmaya devam edilir ve aynı kod tekrar kullanıma sunulacaksa uygun şekilde optimize edilir. Bu, belirli fonksiyonların kullanıldığı yapılarda çok büyük performans artışı sağlar. JIT’in JavaScript gibi diğer dillerde de kullanılmaya başlanıp, eklenmesinden sonra yeni uygulamaların adeta patlamasına neden olmuştur. Örneğin JavaScript yardımıyla çalışan ve kullanıcıyla etkileşime giren sanal makineler web sitelerinin oluşmaya başladığı ilk günlerde hayal bile edilemiyordu. Artık geçmişte sunucuya belirli görevleri yerine getirtmek için saf PHP kütüphanelerini kurmak da daha pratik hale geldi.

Bütün bunlar bir yana, WordPress gibi web içerik yönetim sistemleri için yapılabilecek ve ortaya çıkacak performans iyileştirmesi maalesef minimum düzeyde olacak. Ortalama bir WordPress kullanıcısının veya geliştiricilerin bu yeni özellikten yararlanmaları oldukça uzun zaman alacak gibi gözüküyor. Her ne kadar bütün bu güzel özellikler geliştiricilerin işini kolaylaştırsa da, WordPress sitelerinde geriye yönelik olan uyumluluk bozulacağından, gelecekte yayınlanacak tema ve eklentilerde bu özelliklerden yararlanılması pek ihtimal dahilinde değil.

php 8

Geliştiricilerin Kodları PHP 8 için Güncellemeleri Ne Kadar Sürer?

Her PHP sürümünün ortalama iki senelik bir yaşam döngüsü var. Bu döngüye hataların giderilmesi ve güvenlik açıklarının da kapatılması dahil edilirse bu süre üç seneye çıkabilir. PHP 7.4 sürümü 2019 yılının Kasım ayında yayınlandı ve 7.4 sürümündeki hataların Kasım 2021’e kadar düzeltileceği biliniyor. Kasım 2022’ye kadar da güvenlik sorunları düzeltildikten sonra yaşam döngüsünün sonuna gelinecek. Bu nedenle Kasım 2022 tarihini PHP 7.x sürümünün kesin sonlandırılma tarihi olarak düşünebiliriz. Bu hesaptan 2022 yılına kadar web uygulamalarının en az PHP 8.0 ile veya daha risksiz ve güncel sürümü destekliyor olmaları gerek.

Sonuç

PHP 8’e tam anlamıyla geçiş, PHP’nin şu ana kadar görmüş olduğu en kapsamlı değişim ve geçiş olacak. Uzun vadece buna değecek değişiklikler ve yenilikler gelmiş olsa da, WordPress site sahipleri ila geliştiriciler de bu kısa zaman diliminde uyum açısından zorlanabilirler. Eğer bir web sitesi sahibiyseniz, öncelikle temalarınızın ve eklentilerin uyumlu şekilde güncellenip güncellenmediğini, hatta güncelleme alıp almayacağını kontrol edin. Uyum sağlayamayan ve terk edilen eklentiler varsa, alternatiflere bakmaya başlayabilirsiniz.

Özetle, bu yazıda PHP 8 ile gelen değişikliklerden, WordPress site sahiplerinin bundan nasıl etkileneceğine detaylıca göz attık. Sorularınız varsa Technopat Sosyal’de konu açabilir, eklemek istediğiniz bir şey varsa yorumlarda belirtebilirsiniz.

Etiketler: bilmesi gerekenlerCMSdetaylıeklentifonksiyongüvenliknedirphpPhp 8technopattemaweb sitesiWordPressYazılımyeni PHP
PaylaşPaylaşTweetYollaPaylaş
M. Akil Gündoğan

M. Akil Gündoğan

https://www.technopat.net/

Yorum Yap Yanıtı iptal et

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

RSS Technopat Sosyal

  • 4 bin TL'ye Gaming kulaklık önerisi
  • AMD RX 9070 XT ekran kartına FSP Vita GM 850W PSU Yeterli mi?
  • R9 7950X RX 6900 XT sistemin ederi ne kadar?
  • CS2'de skin satmak mantıklı mı?
  • AYT fizik mantığı nasıl kavranır?
  • Güncel piyasada AK-47 Asiimov alınır mı?
  • 4 bin TL'ye kadar klavye önerisi
  • MacBook Air mi Huawei D16 mı?
  • Protein tozu önerisi
  • Zam öncesinde hangi VP paketini almak daha mantıklıdır?

Technopat Video

Şu an oynayan

Hangi MatePad tableti satın almalıyım? İşte yanıtı!

Hangi MatePad tableti satın almalı

Hangi MatePad tableti satın almalıyım? İşte yanıtı!

Haber
Anker Nebula P1, P1i ve Soundcore Boom 3i inceleme

Anker Nebula P1, P1i ve Soundcore Boom 3i inceleme

Haber
SanDisk Extreme PRO Portable SSD inceleme

Tır geçse dayanır! SanDisk Extreme PRO Portable SSD inceleme

Haber

Teknoloji tutkunu Technopatların ortak adresi: Technopat.net!

Güncel teknoloji, internet, donanım, yazılım, oyun ve daha fazlası haber, makale ve videolar ile Technopat’ta sizlerle.


01010100 01100101 01100011 01101000 01101110 01101111 01110000 01100001 01110100

Kategoriler

  • Yapay Zeka
  • Ev Teknolojileri
  • Makale
  • Video

Sosyal Medya

Bağlantılar

  • Hakkında
  • Haber
  • Video
  • Sosyal
  • Çerez Politikası
© 2011-2025 Technopat. Tüm Hakları Saklıdır.
Netse
Çerez Onayı
Web sitemizi ziyaret ettiğinizde, kullanıcı deneyiminizi daha iyi hale getirmek, hizmetlerimizi size daha etkin bir şekilde sunabilmek için çerezler (cookies) ve benzeri araçlar kullanıyoruz. Çerezler, internet sitesinin düzgün çalışmasını sağlamak, içeriği kişiselleştirmek, sosyal medya özellikleri sağlamak ve trafik analizi yapmak için kullanılan küçük metin dosyalarıdır. Çerezleri nasıl kullandığımız ve kişisel verilerinizi nasıl işlediğimiz hakkında daha fazla bilgi almak için çerez politikamızı ve kişisel veri politikamızı inceleyebilirsiniz.
Fonksiyonel Her zaman aktif
Teknik depolama veya erişim, sadece kullanıcının açıkça talep ettiği belirli bir hizmetin kullanılmasını sağlama amacıyla veya iletişimin elektronik iletişim ağı üzerinden iletilmesinin tek amacıyla yasal olarak kesinlikle gereklidir.
Tercihler
Teknik depolama veya erişim, abone veya kullanıcı tarafından istenmeyen tercihlerin depolanması yasal amacıyla gereklidir.
İstatistikler
Sadece istatistiksel amaçlarla kullanılan teknik depolama veya erişim. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Pazarlama
Teknik depolama veya erişim, reklam gönderimi için kullanıcı profilleri oluşturmak veya kullanıcıyı bir web sitesinde veya birden fazla web sitesinde benzer pazarlama amaçları için takip etmek amacıyla gereklidir.
  • Seçenekleri yönet
  • Hizmetleri yönetin
  • {vendor_count} satıcılarını yönetin
  • Bu amaçlar hakkında daha fazla bilgi edinin
Tercihleri yönet
  • {title}
  • {title}
  • {title}
Sonuç bulunamadı
Bütün Sonuçları Göster
  • Giriş
  • Teknoloji Haberleri
  • Sosyal
  • Video
  • Tavsiyeler
  • İncelemeler
    • Video İncelemeler
  • Güvenlik
  • Oyun
  • Makale
    • Pratik
    • Yazar Köşeleri

© 2025 Technopat
Sorularınız için Technopat Sosyal