Themeforesttan temayı aldık. tema şahane çok güzel harika ama bunu nasıl giydiricez ? valla ben de kral tayfa gibi pek anlamam ama elimden geldiği kadarını sizlere sunuyorum. işi çok iyi bilen biri gelirse boşuna eleştirmesin.
temamızda ilk önce blank page diye bir sayfa olması lazım. eğer yoksa en boş en vasıfsız görünen grid sayfalarını bulun ve içindeki herşeyi kopyalayın. o kalsın bi kenarda.
resources/view içine bir klasör oluşturun. layouts diye. bu ana iskelet sayfamız olacak. her şey bunun üstüne kurulacak. layouts klasörünün içine app.blade.php diye bir dosya oluşturun. biliyorsunuz blade yazmak zorundayız hepsine. app.blade.php içine kopyaladığımız kodları atıyoruz.
ayrıca temada kullanacağımız tüm herşeyi (assets klasörü altında olur hepsi) tüm css,js,assets klasörlerini /public/ içine atıyoruz.
şimdi yapıştırdığımız kodlara gelip değiştirilecek kısımlara örneğin titlea gelip şu kodu yazıyoruz.
1 |
<title>@yield('title')</title> |
içerik kısmı da değişecek. artık temanızda içerik ile ilgili kısımlar hangi kodlara denk geliyorsa onlara gelip
1 |
@yield('content') |
böyle böyle değişecek yerlere bu etiketleri koyuyoruz ki başka bir yerde kullanalım.
jss, img ve csslerin yolunu nasıl bildiricez derseniz, onun çözümü de basit.
örnek :
1 |
<link href="assets/css/style.css" rel="stylesheet" type="text/css" /> |
bunu
1 |
<link href="{{ asset('assets/css/style.css') }}" rel="stylesheet" type="text/css" /> |
hepsine böyle süslü parantezler koyup ekliyoruz. derseniz assets/css/style.css dosyasını nereye atıyorduk diye onları yukarda yazdım. assets klasörünü public içine gönderiyoruz.
şimdi diyecekseniz ki tamam cssler jsler felan değişmiyor ama ben yeri geliyor bir sayfada farklı bir css veya js kullanmak istiyorum. onu da buraya mı ekleyecem. tabi ki hayır. sadece 1 sayfada kullanacağın js ve cssyi tüm sayfalara eklemek mantıksız. bunun içinde csslerin olduğu bölüme
1 |
@yield('css') |
jslerin olduğu bölüme
1 |
@yield('js') |
ekliyorsun.
hepsi bu kadar. şimdi ben bunu nasıl kullanıcam derseniz.
view klasörü içine home.blade.php diye bir klasör oluşturuyorsun. onun içine şunu yazıyorsun.
1 2 3 4 5 6 7 8 9 10 11 |
@extends('layouts.app') /* layouts klasöründeki app dosyasına çağır (bizim yaptığımız app.blade.php işte bu */ @section('title') aliii /* sayfanın başlığını alii yap */ @endsection @section('css') /* varsa ekstradan eklemek istedğin css ekliyorsun */ @endsection @section('content') güzel güzel mevsimler nedir /* içerik geliyor buraya da*/ @endsection |
css veya js’lerin yolunu belirtmek için:
1 |
{{ asset('assets/plugins/jquery-3.3.1.min.js') }} |
kodun yanına açıklamalarını yazdım hepsi bu kadar.
anlamadığınız nokta olursa lütfen iletişimden ulaşınız.