Alhamdulillah, akhirnya setelah sekian lama menunggu PIN verifikasi alamat Google AdSense yang penuh rasa putus asa, cemas dan waswas.
Bagaimana tidak, mendaftarkan salah satu situs yang saya kelola di bulan Maret 2024 lalu tepatnya tanggal 24. Sampai akhir bulan Juni kemarin PIN verifikasi alamat tersebut tak kunjung tiba.
Batas akhir verifikasi sampai 19 Agustus 2024 nanti. Setelah tanggal tersebut iklan akan berhenti ditayangkan, pembayaran pun ditangguhkan. Mana setiap permintaan PIN baru bisa dikirim ulang setiap 3 minggu sekali.
Ditambah saldo sudah mencapai minimum batas ambang pembayaran Google AdSense Indonesia yaitu sebesar Rp. 1.300.000. Seharusnya saldo sudah harus diterima direkening di bulan-bulan sebelumnya.
Menghabiskan penasaran, tadi pagi mencoba mengikuti langkah-langkah bantuan Google AdSense yang ada di Halaman ini.
Klik Pemecah masalah PIN. Diarahkan ke halaman baru yang meminta memasukan alamat email yang didaftarkan ke Google AdSense serta melampirkan foto bagian depan KTP yang digunakan untuk pembayaran.
Tidak lama dari melakukan langkah di atas.
Mungkin teman-teman pembaca blog ini memiliki pengalaman yang sama? coba cara di atas ya. Mudah-mudahan berhasil. Amin.
Dengan cara di atas sudah berhasil membuat Main Content berada tetap dan tepat di tengah. Tanpa class yang di masukan pada tag-tag tadi maka akan terlihat seperti ini.
Secara bawaan Script dan Style Livewire disisipkan otomatis kedalam Layout *.blade.php bila ingin menyisipkannya secara manual bisa ikuti langkah berikut: Cara Disable Auto Inject Script dan Style Livewire
Saat di set ke false kita dapat memasukan @livewireStyles dan @livewireScripts kedalam layout sesuai keingin dimana aset tersebut akan di proses namun biasanya @livewireStyles diletakan diantara tag <head></head> sedangkan @livewireScripts diletakan diantara tag <body></body>.
Untuk melakukan upload file di Livewire Laravel sebenarnya cukup mudah, dengan hanya menambahkan module Livewire\WithFileUploads.
Ketika module tersebut ditambahkan, cukup menyeret file ke dalam input form file, maka secara otomatis berkas tersebut tersimpan dalam folder livewire-tmp.
Folder livewire-tmp dapat kita atur melalui konfigurasi livewire.
Lokasi 📁 tmp mengikuti jenis disk. Jika disk di set ke 🗄️ ‘local‘ maka lokasinya berada di 📁 ‘storage/app/liwewire-tmp‘ jika di set ke 🗄️ ‘public‘ maka 📁 ‘storage/app/public/livewire-tmp‘ atau 📁 ‘public/livewire-tmp‘.
Mengatur folder tmp ini berguna jika ingin melakukan pratinjau file yang di upload. Dengan menggunakan fungsi ⏳ temporaryUrl() pada html;
Baik kita mulai.
Pertama
Buat Class Component livewire baru. Disini saya membuat class component bernama upload dalam folder Demo.
Copy
php artisan make:livewire demo.upload
Dengan perintah di atas, dibuatkan 2 file baru berupa class component dan view.
Kedua
Modifikasi komponen yang tadi dibuat. Tambahkan dukungan upload file.
app/Livewire/Demo/Upload.phpCopy
<?phpnamespaceApp\Livewire\Demo;useLivewire\Component;useLivewire\WithFileUploads;// 1classUploadextendsComponent{useWithFileUploads;// 1.2public$file;// 3 model file mixedpublicfunctionrender(){returnview('livewire.demo.upload');}}
Disana saya menambahkan wire:loading supaya menampilkan indikator sejauh mana file diproses. Juga menambahkan wire:target agar lebih spesifikasi kapan aksi ini dieksekusi.
model="file" yang saya target. Sehigga ketika model tersebut terisi / menerima request. Otomatis indikator ini dijalankan.
Ya, dengan langkah pertama, kedua dan ketiga. Kita sudah berhasil dan dapat melakukan upload file di livewire.
Tetapi, bila ingin sesuatu yang lain ikuti langkah di bawah.
Kelima
Buat fungsi baru pada class component langkah kedua, penamaanya bisa disesuaikan dengan selera.
app/Livewire/Demo/Upload.phpCopy
<?phpnamespaceApp\Livewire\Demo;useLivewire\Component;useLivewire\WithFileUploads;classUploadextendsComponent{useWithFileUploads;public$file;/** fungsi upload.store */publicfunctionUploadStore(){$berkas =$this->file;/** Untuk mendapatkan nama file orsinil beserta ekstensinya */$name =$berkas->getClientOriginalName();/** Untuk mendapatkan nama file tanpa ekstensi */$filename =pathinfo($name)['filename'];/** Untuk mendapatkan extensi file */$ext =$berkas->getClientOriginalExtension();/** Untuk mendapatkan jenis mime file */$mime =$berkas->getMimeType();/** Untuk mendapatkan ukuran file dalam byte */$size =$berkas->getSize();/** * Upload file kedalam folder uploads * namai file tersebut sesuai nama asli dan ekstensinya * disk di set ke 'public' sehingga file akan diunggah * kedalam folder 'public/storage/uploads' */$this->file->storeAs(path:'uploads',name:$name);/** * Sesi atau pesan status setelah proses upload */session()->flash('upload_store',['name'=>$name,'judul'=>$filename,'ekstensi'=>$ext,'mime'=>$mime,'size'=>$size,'file'=>'/storage/uploads/'.$name]);/** * Mengarahkan ke halaman saat ini */returnback();}publicfunctionrender(){returnview('livewire.demo.upload');}}
Adakalanya kita ingin menyimpan berkas instalasi Laravel terpisah dengan berkas hasil unggahan baik itu berupa Gambar, Video atau format berkas lainnya.
Selain FTP laravel juga menyediakan jenis filesystems S3 (Simple Storage Service) atau lebih dikenal dengan AWS S3 atau Object Storage. Sebelum ke tahap installasi dan konfigurasi, berikut daftar Endpoint S3 di Indonesia:
Apabalia lokasi endpoint (atau yang disebutkan di atas) berada di wilayah Indonesia AWS_DEFAULT_REGION setel ke id. Sesuaikan dengan dokumentasi penyedia.
Ketika AWS_USE_PATH_STYLE_ENDPOINT disetel ke true maka format url berupa : http://endpoint/namabucket/ sedangkan falsehttp://namabucket.endpoint/.
Disable http => ['verify' => false] supaya dapat menghubungkan ke S3 dengan protokol tidak aman http://. Berguna saat pengembangan dan curl.cainfo pada php.ini tidak diatur.
Untuk merubah format waktu bawaan Laravel ke format waktu Indonesia saya lebih suka menggunakan Carbon.
Install Carbon
composer require nesbot/carbon
Tetapi biasanya nesbot/carbon disertakan saat pertama kali menginstall Laravel.
Modifikasi file AppServiceProvider.php yang terletak didalam folder app/Providers. Lalu tambahkan Carbon::setLocale('id') pada function boot(). Sehingga terlihat seperti ini:
<?phpnamespaceApp\Providers;useCarbon\Carbon;useIlluminate\Support\ServiceProvider;...classAppServiceProviderextendsServiceProvider{...publicfunctionboot():void{Carbon::setLocale('id');/** atau * setlocale(LC_TIME, 'id'); * untuk penggunaan formatLocalized(); */}}
Untuk menampilkan format waktu Indonesia pada tampilan .blade.php.
@slot('title) Format Waktu Lokal Indonesia@endslot...<div> <article>{{-- Jumat, 28 Juni 2024 --}}{{ \Carbon\Carbon::parse($blog->created_at)->translatedFormat('l, j F Y')}}{{-- 11 jam yang lalu --}}{{ \Carbon\Carbon::parse($blog->created_at)->diffForHumans()}} </article><div>