WP-CLI 1.2.0 yayımlandı! Peki ama WP-CLI ne?

Aranızda “İyi, güzel de, WP-CLI nedir ki?” diyenler olabilir. Dolayısıyla 1.2.0 sürümündeki yeniliklerden bahsetmeden önce genel olarak WP-CLI’nin ne olduğundan biraz bahsetmek yerinde olacak. 2011 yılından beri geliştirilmekte olan proje 2016 yılının sonunda (gerçekten sonunda, Matt’in duyurusu 29 Aralık 2016 tarihli) WordPress.org çatısı altına taşındı. Finans problemleri de çözülünce, geliştirmeler iyice hızlandı.

Okumaya devam et WP-CLI 1.2.0 yayımlandı! Peki ama WP-CLI ne?

yükleniyor...

noopener ve noreferrer nedir? SEO’yu etkiler mi?

Son çalıştığım projede, .NET altyapısına sahip bir web sitesinin mevcut tasarımını WordPress teması haline getirdik. Sonrasında da eski sitedeki içeriği yeni siteye aktarmak için bir çalışma yaptım. Her şey yolunda gidiyordu, ta ki bazı içerikleri el ile düzeltmem gerekene kadar. Bağlantılarda bir anda ortaya çıkan gizemli rel="noopener noreferrer" kodu da neyin nesiydi?

Okumaya devam et noopener ve noreferrer nedir? SEO’yu etkiler mi?

yükleniyor...

Markdown: Yalın metin ile biçimleme

Bir önceki yazımda yeni hedefimden bahsetmiştim. Bunu da Markdown destekli Ulysses yazılımını kullanarak gerçekleştirmeye çalışıyorum. Önceki yazıda da bol bol Markdown’dan bahsetmiştim. Peki ama nedir bu Markdown?

Okumaya devam et Markdown: Yalın metin ile biçimleme

yükleniyor...

PHP söz dizimi kontrolü

Dün yayında olan bir PHP projesinde çeşitli değişiklikler yapmak durumunda kaldım. Test etme şansım olmadığından dosyanın bir kopyasını sunucuya atarak sunucu üzerinde test etmeye çalıştım. Gönderdiğim dosyayı çalıştırmayı denediğimde bomboş bir ekranla karşılaştım. Güvenlik nedeniyle sunucu, hata mesajlarını ekrana basmayacak şekilde ayarlanmıştı. Hata kayıtları da benim yetkim olmayan bir yerde duruyordu. Bir şekilde hatanın nerede olduğunu bulmam gerekiyordu. Çok fazla değişiklik yaptığım için eski dosya ve yeni dosya arasında bir karşılaştırma yapmak uzun sürecekti. Bir kaç kontrol yapmaya karar verdim.

İlk olarak söz dizimi kontrolü yaparak dosyanın PHP tarafından işlenebildiğinden emin olmak istedim. Bunun için PHP’yi komut satırından “-l” parametresi ile çalıştırıp ikinci parametre olarak dosyanın ismini verebilirsiniz. Eğer PHP klasörünüz PATH değişkeninde tanımlandıysa dosyanızın olduğu klasörde komut satırı açarak php -l dosyaismi.php şeklinde söz dizimi kontrolü gerçekleştirebilirsiniz. PATH değişkeninde tanımlı değilse php.exe’nin tam yolunu girmeniz gerekebilir (Örneğin: c:\php\php.exe -l dosyaismi.php)

Bu komut PHP dosyanızı kontrol edecek, bir hata bulamazsa sonlanacak ya da bulduğu ilk hatada hatanın olduğu satır numarasını ekrana basarak sonlanacaktır. İlgili hatayı düzelttikten sonra komutu tekrar çalıştırarak, dosyayı tekrar kontrol edebilirsiniz. Bu şekilde hiç söz dizimi hatası kalmayana kadar kodu tekrar tekrar çalıştırarak dosyanızı hatalardan arındırabilirsiniz.

Bu şekilde problemimi giderip dosyayı sunucuya tekrar yükledim. Problemim giderilmişti.

yükleniyor...

“Ambiguous match found” hatası neden kaynaklanır, nasıl düzeltilir?

ASP.NET ile uygulama geliştirirken çok ilginç bir sorunla karşılaştım. Biraz uğraştıktan sonra sorunu çözdüm. Şansıma çok büyük bir proje değildi ve yine şansıma küçük bir değişiklik yaptığım sırada karşıma çıktı. Bu yüzden problemi çok daha kolay tanımlayabildim ve bu da çözüme daha kolay ulaşmamı sağladı.

Problem derleme sırasında karşınıza çıkmıyor. Proje sorunsuz bir şekilde yapılandırılıyor fakat problemin olduğu web sayfasını açmak istediğinizde ilk satırda belirsiz eşleşme (Ambiguous match) bulunduğu ile ilgili bir hata mesajı alıyorsunuz ve sayfa açılmıyor. Aşağıdaki ekran görüntüsüne benzer bir görüntü ortaya çıkıyor.

Bir süre webde araştırınca sorunun neden oluştuğunu, nasıl çözüleceğini burada buldum. Temel olarak problem, web sayfasında tanımlanmış bir kontrol ile aynı isme sahip bir değişken tanımlandığında ortaya çıkıyor. C# büyük/küçük harf duyarlı bir dil olsa da nedense bu durumda düzgün çalışmıyor ve hata üretiyor. Yani sayfanızda “Metin” isimli bir kontrol bulunuyorsa “metin” isimli bir değişken kullanmamanız gerekiyor.

Karşımıza açıklayıcı bir hata mesajı çıkmadığı için bu davranışın bir bug olduğunu düşünüyorum. İşin ilginç yanı konuyla ilgili bulduğum makale 2006 yılına ait, yani en az 5 senedir bu problem var ve Microsoft tarafından konu ile ilgili bir geliştirme/açıklama/düzeltme söz konusu değil…

yükleniyor...