Aylık Arşiv: Ekim 2021

Laravel blade eger veri varsa goster

Laravel projesinde controller veya livewire componentden blade page alanina bir veri kumesi gonderdiniz, bu veriyi de bir tablo uzerinde gostermek istiyorsunuz, fakat bu arrayde eger o veri bos ise hata olusmamasi icin ne yapmalisiniz.

     @isset($product->category->name)
     <td>{{ $product->category->name }}</td>
     @else
     <td> - </td>
     @endisset

Blade sayfasina tabloda ornegin category verilerinizi gondereceksiniz, category name var ama category order belirtilmemis ise tablodaki bu alan “-” isaretini koymak isterseniz @isset ozelligini kullanabilirsiniz, if else mantiginda calisan bu ozellik blade kullanmak istediginiz degerin olup olmadigina bakarak, size true veya false degeri donecektir.

Laravel livewire ile basit searchable data-table yapimi

Bu videoda laravel livewire ile serach alani bulunan ve dinamik bir sekilde sorgu gosteren table hazirlamanin cok basit yolunu gostermisler.

Livewire slogani, js kullanmadan dinamik siteler yapmak. Bu acidan oldukca basarili bir yapi, bununla beraber model alaninda

public static function search($search){

    return empty($search) ? static::query() 
    :  static::query()->where('name', 'like', '%'.$search.'%')
    ->orWhere('slug', 'like', '%'.$search.'%');
}

yukaridakine benzer bir koda yazarak dinamik bir sorgulamayi livewire component alaninda cok rahat hazirlayabilirsiniz.

<?php

namespace App\Http\Livewire\Admin;

use App\Models\Category;
use App\Models\Language;
use Livewire\Component;
use Livewire\WithPagination;

class AdminCategoryComponent extends Component
{
    use WithPagination;
    protected $paginationTheme = 'bootstrap';

    public $search;
    
    public function render()
    {
         return view('livewire.admin.admin-category-component',
         
         [ 'categories' => Category::search($this->search)->orderBy('id','DESC')->Paginate(10), 'langs'=>Language::all()]
         
         )->layout('layouts.admin');
    }
}

Bu yapida datatable ile pagination kullanabilmek oldukca onemli, cunku projede az data varken sorun olmazken, proje verisi artinca table da verileri cekmek sunucuyu yordugu icin projenin hizini oldukca etkileyecektir.

Bir hocamizin dedigi gibi livewire candir !

Sorunuz olursa yoruma birakin, zaman olursa uzerinde konusabiliriz.

Laravel livewire ne vaadediyor

Laravel 8 ile birlikte livewire yapisini goruyoruz, daha onceden laravel vuejs ile birlikte frontend kismini yapiyorduk veya siz ne ile projenizi yapmak isterseniz, ama onerilen vuejs idi.

Simdi ise livewire diye bir yapi goruyoruz, kendi tanitim sitesinde de goreceginiz gibi cok sade ve temiz bir kod yapisi hazirlamis arkadaslar, peki farki ne? En guzel bolumde burasi, livewire ozetle diyor ki, arkadas sen php kodu yaz ben arkada ajax ile onu dinamik yapayim, yeni nesil js dilleri gibi yaptgin islem dinamik olsun.

Ne demek dinamik olsun, bir ornek verelim, bir musteri online satis sitesinde urunu sepete ekledigi zaman sepetteki urun adedini arttirmak icin, php ile bunu tek basina yapamaz, bununla birlikte ajax yapisini veya kucukte olsa bir js fonksiyonu kullanmaniz gerekirdi. Simdi ise livewire yapisini yapan eli opulesi arkadaslar der ki, sen fonksiyonu yaz, sonra etkilenecek baska bir fonksiyon birsey varsa onu da emit et, sayfa yenilenmeden, ben senin butun islemlerini yapayim, bu ne anlama geliyor, hiz ve dinamiklik demek.

Normalde laravel php yaziyorsaniz, livewire kullanmak isinizi js karmasikligina girmeden kolaylastiriyor. Arkada ajax kendi halinde takiliyor, veri getir islerini o yapiyor ama siz hic yorulmuyorsunuz, daha az kod ile ayni is yapiliyor, ve laravelin nimetlerinden faydalanmaya devam ediyorsunuz.

Livewire kullanacaginiz zaman daha once make:contoller yerine, make:livewire ile isinize devam ediyorsunuz, http nin altinda bulunan controller klasorunde olan actionlar artik livewire yapisi icinde oluyor.

https://laravel-livewire.com/ sitesinde ana sayfada zaten ne kadar sade oldugunu kendisi anlatiyor. Mevcut islerinizi bitirdikten sonra livewire ile bir proje yapmanizi oneriyorum.

Simdi bir proje hazirliyorum laravel livewire yapisini kullanarak, bir sorun yasamadim, controller yapisina donmeme neden olacak henuz bir sey yok, bakalim zaman ne gosterecek.

Bir sorunuz olursa yorumlara lutfen yazin, zamanim oldukca yardimci olmaya calisirim, basarilar

Woocommerce icin en basarili urun varyasyonu olusturma eklentisi

Bu yazidaki bazi analizlerin guncellenmesi gerekiyor

Online satis yapmak istiyorsunuz, arastirdiniz ve wordpress sizin icin en uygun fiyat ve anlasilabilir yapi olarak karsiniza cikti. Sonra egitimlere baktiniz, teorikte hersey cok guzel ilerliyor, artik boyle bir yapi olsuturacaginiza kanaat getirdiniz. Tebrikler!

Online satis sitesi kurmak icin size cok kaliteli bir wordpress temasi lazim, ve bu tema ayni zamanda woocommerce yapisini da desteklemeli. Baktiniz ve bir cok tema buldunuz hangisini secmelisiniz. Onerim ilk olarak https://flatsome3.uxthemes.com/ bu temayi inceleyin, burada detayli bir sekilde https://demos.uxthemes.com/ bu alani incelemenizi tavsiye ederim, bu ekip cok basarili bir calisma yapmislar ve sadece online satis icin degil normal siteler icin dahi size cok fazla ornek sablon sunuyor. Ve bu sablonlari duzenlemek oldukca basit.

Evet gayet iyi gidiyoruz, temayi da sectik ama ilerde bizi neler bekliyor, yasayip gorecegiz.

Simdi urunleri eklemek istiyoruz, urunlerde varyasyon yani bir urunun farkli turleri var, ornegin tisort satacaksiniz, renkleri bir varyasyon (variation), bedenleri ise ayri bir varyasyon olarak woocommerce giris yapmalisiniz. Tamam sonra akliniza musteri urunleri secerken secim kisminda yazi degil de gorselleri gorsun, cok guzel, ama nasil? Woocommerce online satis plugin bunu karsilamiyor, simdi yeni bir arastirma icine girmelisiniz, woocommerce icin bunu duzenleyecek bir eklenti var mi? Yani eklentinin eklentisini ariyorsunuz, yapilan is dogal olarak dogru, hadi devam edelim biraz sabir, sonucta internette dukkaniniz olacak.

Arastirdiniz ama arastirirken nelere dikkat etmelisiniz, ornegin satacaginiz urunde alan boyut veya agirlik hesaplamasi veya herhangi bir hesaplama var mi? orngein musteri iki farkli deger secince fiyat desicekse nasil olacak? Bunlar artik bizim yeni sorularimiz?

Birkac basarisiz eklenti aldiktan sonra eli opulesi bir eklenti buldunuz, bir aydinlanma yasiyorsunuz ve sizi gercekten heyecanlandiriyor. https://wordpress.org/plugins/uni-woo-custom-product-options/ eklentimiz bu. Adamlar gercekten guzel yapmislar. https://cpo.builderius.io/shop/ bu linkten detayli bir sekilde varyasyonlu urunlerin nasil sayfaya yerlesebilecegini gorebilirsiniz. Dinamik bir sekilde musteri secip yapinca hesaplama yapmasi oldukca basarili ve radio button imagfy gibi farkli ozellikleri de basarili.

Baska eklentiler de olmasina ragmen bu eklentinin avantaji, siz secimi yaptiktan sonra seciminizi hem sepette gosteriyor hem de bildirim mailinde bulunduruyor. Baska eklentiler size urun detay sayfasinda secimi gosterip hesaplama yapiyor ama sepette secilen urun detayi yani varyasyonu belli degil, ornegin musteri secerken 3 m genislik 6 metre uzunluk seciyor, hesaplama alani calisiyor sonra sepete bakiyorsunuz 18 metrekare urun yaziyor, pkei en boy degeri nerede ?

Bana gore en basarili eklenti, simdi daha once sectiginiz flatsome temasina bu eklentiyi uyguladiniz, hoppala! tema ile eklenti uyumsuz iki cok basarili yapi beraber calismiyor, simdi baska bir tema secmelisiniz ve basarili olamli o zaman ikinci alternatif https://themeforest.net/item/woodmart-woocommerce-wordpress-theme/20264492 bu sizin isinizi gorecek.

Sorulariniz olursa yorum kismina yazin, zamanim oldukca cevaplayacagim.

Bol kazanclar