Laravel – Laravel Kurulumu

Laravel son zamanlarda adını sıkca duyurmayı başaran ve hızlı  yükselişi ile dikkat çeken bir framework.Bu hızlı  yükselişi benim de dikkatimi  çekti  ve Codeigniter framework  yerine Laravel’i incelemeye başladım.

Nedir ?

Laravel etkileyici ve zarif söz dizimine sahip bir web uygulama çatısıdır (framework’tür). Geliştiriciliğin gerçekte eğlenceli, üretken deneyimlere dayanarak yerine getirilmesi gerektiğine inanır.Laravel birçok web uygulamasında kullanılan yetkilendirme, rotalama, oturum yönetimi ve kaşeleme gibi ortak görevleri kolaylaştırarak geliştiriciliğin zorluklarını ortadan kaldırmak amacını gütmektedir.

Laravel, geliştiriciler için, uygulama işlevselliğinden ödün vermeden geliştirme aşamasını memnuniyet verici hale getirmeyi amaç edinmiştir. En iyi kodu mutlu geliştiriciler yazar. Bu hedef için Ruby on Rails, ASP.NET MVC, ve Sinatra dilleri de dahil olmak üzere, diğer çatılardaki güzel özellikler bir araya getirilmeye çalışılmıştır.

Laravel büyük ve kapsamlı uygulamalar için gereken araçları içeren erişilebilir ve aynı zamanda güçlü bir çatıdır. Mükemmel ters kontrol kapsayıcısı, etkileyici göç sistemi ve sağlam yerleşik ünite test desteği size geliştirmeyi amaçladığınız uygulama için gerekli araçları sağlayacaktır.
Kaynak:Laravel 4 Türkçe Dokümantasyon

Kurulum

[box type="note"]Anlatım KUBUNTU 13.10 sürüme göre yapılmıştır.[/box]

Laravel kurulumu  için  ilk önce composer kurulumuna ihtiyacınız var bunun için bu linki kullanabilirsiniz. Bu  linkten indirdiğiniz composer.phar dosyasını bilgisayarınızda her yerden kullanabilmek için /usr/local/bin dizinine composer ismiyle kopyalamanız gerekiyor. Bu  işlem için composer.phar dosyasının bulunduğu dizinde konsol açarak şu komutu çalıştırın(Dolphin kullananlar F4 tuşu ile konsol açabilirler):

[bash]sudo cp composer.phar /usr/local/bin/composer[/bash]

Bu işlemden sonra composer’i rahat bir şekilde kullanmak için dosya yetkilerini herkes tarafından erişilebilir olarak ayarlayalım. Bunun için konsolda:

[bash]cd /usr/local/bin/

sudo chmod 0777 composer[/bash]

Komutlarını çalıştırın. Composer kurulumunu  tamamladık. Şimdi  gelelim laravel kullanarak yeni bir proje oluşturmaya.

[box type="note"]Bundan sonraki işlemleri yapabilmek için bilgisayarınızda LAMP server kurulu olması gerekmektedir.[/box]

Laravel ile yeni bir proje oluşturmak için gerekli olan bir başka uygulamada “git” uygulaması “git” kurmak için:

[bash]sudo  apt-get install git[/bash]

Komutunu  yazıyoruz. “git” kurulduktan sonra bilgisayarımızda kurulu olan apache server ın www klasörüne geliyoruz.

[bash]cd /var/www/[/bash] [box type="note"]Eğer türkçe UBUNTU kullanıyor ve php sürümünüz güncel değilse dil sorunlarından kaynaklı hatalar yaşayabilirsiniz bunun için composer komutundan önce;

[bash]export LANG=C[/bash]

komutunu çalıştırarak sorunun çözebilirsiniz.[/box]

composer ile projemizi oluşturuyoruz:

[bash]composer create-project laravel/laravel proje-ismi –prefer-dist[/bash]

Bu işlemle birlikte laravel kurulumunuz tamamlanmış demektir. Tarayıcınızdan http://localhost/proje-ismi/public adresini
açtığınızda karşınıza “You have arrived” yazısı olan bir sayfa gelir.

laravel Yukarıda gördüğünüz sayfa yerine karşınıza “Laravel requires the Mcrypt PHP extension.” uyarısı çıkıyorsa aşağıda belirttiğim adımları yapın.

PHP MCRYPT kurulumu için:

[bash]sudo apt-get instal php5-mcrypt[/bash]

sonrasında php.ini dosyasını nono editörü ile açarak [mcrypt] kısmından sonra “extension=mcrypt.so” satırını ekleyin.
php.ini dosyasının yerini;

[bash]locate php.ini[/bash]

komutu ile öğrenebilirsiniz.Nano editörü ile php.ini dosyasını açmak için;

[bash]sudo nano /etc/php5/apache2/php.ini[/bash]

php.ini dosyasında arama yapmak için Ctrl+W tuş kombinasyonunu kullanın ve “mcrypt” kelimesini  aratın. ver [mcrypt] ifadesinden sonraki “[]” içeren başlığın üstüne “extension=mcrypt.so” ifadesini  ekleyin ve kaydedin.

Sonrasında  /etc/php5/conf.d dizininde mcrypt.ini dosyası olup olmadığına bakın eğer yoksa içeriği:

[bash]; configuration for php MCrypt module
extension=mcrypt.so[/bash]

olan bir mcrypt.ini dosyasını oluşturun.
Son olarak /etc/php5/mods-available dizininde  mcrypt.ini dosyasının olup olmadığına bakın ve yoksa demin oluşturduğunuz şekilde dosyayı oluşturun.Ve aşağıdaki komut ile php mcrypt mödülünü aktif hale getirin.

[bash]sudo  php5enmod mcrypt[/bash]

Bundan sonra laravel çalışır duruma gelmiş olacaktır. İşlemler biraz uzun ve karışık gelebilir ama ben kendi bilgisayarımda karşılaştığım bu sorunu bu işlemlerle çözdüm ve sizlerle paylaşıyorum.

Bir sonraki  yazımda projemize http://localhost/proje-ismi/public şeklinde ulaşmak yerine bir domain tanımlayarak nasıl ulaşacağımızdan bahsedeceğim.(Localhost projenize domain tanımlama)

Laravel ile ilgili daha fazla bilgiyi aşağıdaki bağlantılardan edinebilirsiniz.

[box type="tick"]Laravel Türkiye forumu[/box]

[box type="tick"]Laravel Türkçe kaynaklar[/box]

Devam

WordPress Dışındaki PHP Dosyasına WordPress Fonksiyonlarını Kullanma

Başlıkta belirttiğim wordpress dışındaki  php  dosyalarından neyi  kastettiğimi  belirterek  yazıma başlayayım. Wordpress de eklenti ya da tema hazırlarken wordpress in yüklenme aşamasında wordpress e katılmayan dosyalardan bahsediyorum mesela bir eklentide siteye ekleyeceğiniz javascript dosyasını php ile oluşturmak istiyorsunuz , bu  dosya sayfaya sonradan ekleneceği için bu dosya içerisinde wordpress fonksiyonlarını kullanamayacaksınız.

Örnek olarak eklentinizin klasöründe bulunan default.js.php dosyasını eklentiniz ile birlikte .js dosyası  olarak  ekleyeceksiniz. Bu javascript dosyasını php ile oluşturmak için nedeniniz js ile sayfaya ekleyeceğiniz metinlerin çoklu dil  özelliğine sahip olması olabilir.Kodlarımız aşağıdaki  şekilde olursa tanımlanmayan fonksiyon şeklinde hata alırız.

[php]<?php
header( "content-type: application/x-javascript" );

__(‘çokli dile uygun metin’,’textdomain’);

?>[/php]

Bu  hatayı çözmek için wordpress ana dizininde bulunan wp-load.php dosyasını bu  dosyaya eklememiz gerekiyor yani kodlarımızı aşağıdaki  şekilde ayarlarsak sorunu  çözmüş oluruz.

[php]<?php
include "../../../wp-load.php";
header( "content-type: application/x-javascript" );

__(‘çokli dile uygun metin’,’textdomain’);

?>
[/php]

 

Devam

Notices-Duyurular Eklentisi Yayınlandı

Hazırladığım bu  eklenti  wordpress blogunuzda duyurular yayınlamanızı  sağlıyor. Duyuruyu  yayınlarken şu ayarlamaları yapabiliyorsunuz:

  1. Duyuruyu sitenize gelen herkes mi yoksa sadece Giriş  yapmış  kullanıcılar mı  görecek ?
  2. Duyuru sayfanın üstünde şerit halinde mi  gözükecek yoksa Sayfanın ortasında pencere şeklinde mi ?
  3. Duyuru ne zamana kadar gösterilecek?
  4. Duyurunun tasarımı  nasıl olacak (4 farklı seçenek )

Bu ayarların hepsini Yeni Duyuru Ekle sayfasında  sağ taraftaki Duyuru Ayarları bölümünden kolaylıkla belirleyebileceksiniz.

screenshot2

Bir çok sitede sitede her girişimizde karşımıza çıkan reklamlar ilanlar var. Bu reklamların her siteye girişimizde karşımıza çıkması çok sinir bozucu bir durum oluşturuyor. Yayınladığınız duyurunun bu gibi bir duruma neden olmasını engellemek için Duyurulara okundu denetimi ekledim. Giriş yapmış  yada yapmamış herhangi  bir kullanıcı Karşısına çıkan duyuruyu kapatmak için kapatma ikonuna tıkladığında karşısına “Bu duyuruyu bir daha görmek istemiyorsanız,”Bir daha gösterme” butonuna basın.” şeklinde uyarı çıkıyor ve bir daha gösterme butonuna tıkladığında o duyuru kullanıcının karşısına bir daha çıkmıyor.

Duyuru Bir daha gösterme

Duyuru ayarlarının en altında bulunan “Kenarlıksız” seçeneğini seçtiğinizde duyuru sadece içeriğini gösterecek ve duyuruda herhangi bir kenarlık bulunmayacaktır. Youtube videoları ve afiş duyurularınızda bu özelliği kullanarak daha iyi bir görünüm elde edebilirsiniz.

Eğer duyurunuza herhangi bir başlık eklemezseniz duyuruda başlık için ayrılan boşluk silinecektir.

Kenarlıksız Duyuru

 

KURULUM 

Eklentiyi  yüklemek için Wordpress admin sayfasından eklentiler sekmesinde Duyurular aramasını  yapıp sonuçlardan Notices-Duyurular eklentisinde şimdi yükle linkine tıklayarak sitenize kurabilirsiniz.

Yada aşağıdaki adresten zip dosyası halinde eklentiyi indirip içindeki dosyaları ftp bağlantınız ile wp-content/plugin dizinine göndererek  kurulum yapabilirsiniz.

[box type="download"]Wordpress > Notices-Duyurular [/box]

Devam

Foto Galeri

PortfolioImageNavigation

Bir sitemde beğenerek  kulandığım Codrops ekibinin hazırladığı Portfolio Image Navigation with jQuery fotograf galerisini daha rahat bir şekilde kullanama fikriyle  kodlamaya başladığım foto galeri uygulamasını sizlerle paylaşmak istedim .

Orijinal  versiyon demo:http://tympanus.net/Tutorials/PortfolioImageNavigation/

Normal şartlarda bu galeriyi kendi sitenizde kullanmak istediğinizde resimleri uygun boyutlara getirmeniz, resimleri sitenize ftp ile yüklemeniz ve fotogaleri index sayfasının html kodlarını düzenlemeniz gerekmekte.Bu işlerde bilgisi az olan biri için yeteri kadar zor ve uğraştırıcı bir durum.

Yazdığım uygulama ile bu galeriyi kullanmak gayet kolay bir hale geliyor.Kurulumu ile anlatmaya başlıyayım.

[box type="download"]FotoGaleri[/box]

Yukarıdaki  linkten fofoGaleri dosyasını indirin.indirdiğiniz zip dosyasının içindeki tüm dosyaları sitenizde foto galerinin gözükmesini istediğiniz yere yükleyin.www.siteniz.com/galeri şeklinde gözükmesi için sitenizin ana dizininde galeri isminde bir klasör açın ve dosyaları o klasöre yükleyin.

Burada önemli olan şey foto galeriyi  yüklediğiniz dizinin sahibi ve grubu için yazma  iznine sahip olması gerekiyor bunun için dosya izinlerini 0775 şeklinde ayarlayabilirsiniz.(Nasıl yapılacağına dair bu yazımı inceleyebilirsiniz.).Kurulum işlemi  bu  kadar.

Şimdi  galerinin ayarlarını yapmak ve resim yüklemek için sitenizde galeriyi yüklediğiniz dizini açın(www.siteniz.com/galeri).İlk açılışta karşınıza şeyle bir ekran gelecek:

fotogaleri1

Şifre olarak  123456 yazıp Doğrula dediğinize karşınıza galerinin ayar sayfası gelecek ilk  seferde şifre değiştirmeniz gerekmektedir.

fotogaleri

Yeni şifre belirledikten sonra artık fotoğraf yükleme işlemine gelebiliriz.

rsim ekle

Fotoğraf yüklemek çok basit üstteki resimde gördüğünüz  gibi ekle butonuna tıklayıp resminizi seçmek dışında uğraşmanız gereken herhangi bir şey yok.Fotoğrafınız yüklenip otomatik olarak boyutlandırılacak ve galerinizdeki yerini alacak. Bu şekilde yan yana 10 tane fotoğraf ekleyebilirsiniz.

fotodeğiştirsil

Eklediğiniz bir resmi silmek yada bir başka bir fotoğrafla değiştirmek için yapmanız gereken sadece değiştirmek yada silmek istediğiniz fotoğrafın üstüne gelip uygun butona basmanız.

[box type="info"]İlgilenenler için github linki: https://github.com/sametatabasch/Foto-galeri [/box]

Karşılaştığınız hataları bana bildirmekten çekinmeyin 🙂

Devam

PHPStorm’da WordPress Kod Düzenini Kullanma

Kod  yazarken  kodlarımızın düzenli olmasına  dikkat etmeliyiz. Yazdığımız  kodların  başka yazılımcılar tarafından rahat bir şekilde okunabilmesi için belli  kurallara uyarak kodlarımızı yazmalıyız. PHP kodlarını  herhangi  bir not defteri  ile yazabiliriz ama not defteri ile kod yazmak oldukça zordur. Kodların karmaşasını  düzene sokmak onları anlaşılması kolaybir hale getirmek not defteri ile neredeyse imkansızdır. Bu  yüzden kod yazarken İDE(integrated development environment) yani  tümleşik  geliştirme ortamı kullanmalıyız.İDE bize kod yazarken otomatik  renklendirme,otomatik kod tamamlama ve otomatik kod düzenleme gibi kolaylıklar sağlar.

PHPStrom PHP üzerine yoğunlaşmış  PHP, HTML, JAVAScript geliştirme ortamıdır. PHPStrom ile kodlarımızı düzenlediğimiz  zaman  ki  bunu  kısace ALT+Shift+L tuş  kombinasyonu ile yapabiliriz, kendi bünyesinde  tanımlı olan kurallara göre düzenlemesini  yapar.Örnek  olarak :

[php]$degisken=’PHPStrom’  ;
if  ($degisken  == ‘PHPStrom’){echo $degisken;
}else{
$degisken=’PHPStrom’  ;
}[/php]

bu  şekildeki  bir kod PHPStrom ile düzenlendiğinde sonuç:

[php]$degisken = ‘PHPStrom’;
if ($degisken == ‘PHPStrom’) {
echo $degisken;
} else {
$degisken = ‘PHPStrom’;
}[/php]

şeklinde olur. Burada kısa bir  kod yazdık  ama bol satırlı  bir  dosyada bu düzenleme okunabilirliği büyük ölçüde arttırır.

Bu  şekilde  birden fazla  kod düzeni mevcut  yazılımcı bu şekilde  bir  düzene alıştığı  zaman kodları okuması  daha kolay olur. Wordpress geliştiricileri de bu  şekilde bir  kod  düzeni  kullanırlar. Fakat bu  düzen PHPStorm ile  gelen düzenden biraz farklı.Wordpress için bir  eklenti veya bir  tema  kodluyorsanız wordpress in kod düzenini  kullanmanız  çok daha doğru olur.

Peki Wordpress kod düzenini PHPStrom ile nasıl kullanacaksınız?

Hemen göstereyim :

ilk önce aşağıdaki linkten Wordpress.xml dosyasını  indirin.

[box type="download"]https://gist.github.com/Rarst/1370155/raw/df6f50813d9f69967abdbf03fa3bf38f805a8609/WordPress.xml[/box]

Sonra indirdiğiniz bu xml dosyasını Linux için:”~/.WebIdeXX/config/codestyles" dizinine kaydedin. Buradaki “XX” bir  sayıyı  belirtiyor mesela ” .WebInde60/” gibi.

PHPStrom u  açın (Açıksa kapatıp tekrar açın) File>Settings>Code Style menüsüne gelin Scheme ayarını Wordpress olark  seçin ve kaydedip  kapatın.

phpstrom codeStyleBundan  sonra PHPStrom Wordpress kod düzenine göre kodlarınızı düzenleyecek.Demin verdiğim örnek Wordpress düzenine göre şu şekilde oluyor:

[php]$degisken = ‘PHPStrom’;
if ( $degisken == ‘PHPStrom’ ) {
echo $degisken;
}
else {
$degisken = ‘PHPStrom’;
}[/php]

Kaynak:https://gist.github.com/Rarst/1370155#file-wordpress-xml

Devam