Merhaba, bu yazımda Laravel Filemanager kullanımını anlatacağım. Dosya yüklemek için oldukça basit ve kullanışlı olan bu paket, editör üzerinden yüklenen resimler için bir galeri oluşturup galerideki resmi tekrar çağırabilmenizi sağlıyor.
İlk olarak paketimizi projemize dahil edelim.
composer require unisharp/laravel-filemanager
Paketi projemize dahil ettikten sonra Config/app.php dosyasını açalım ve providers altına aşağıdaki satırları ekleyelim.
UniSharp\LaravelFilemanager\LaravelFilemanagerServiceProvider::class, Intervention\Image\ImageServiceProvider::class,
Daha sonra aliases altına aşağıdaki satırı ekleyelim.
'Image' => Intervention\Image\Facades\Image::class,
Paketin yapılandırmasını kurmak için aşağıdaki komutları çalıştıralım.
php artisan vendor:publish --tag=lfm_config php artisan vendor:publish --tag=lfm_public
Önbelleği temizleyelim:
php artisan route:clear php artisan config:clear
Sembolik bir bağlantı oluşturalım:
php artisan storage:link
Route/web.php içerisinde aşağıdaki tanımlamayı ekleyelim.
Route::group(['prefix' => 'laravel-filemanager', 'middleware' => ['web', 'auth']], function () { \UniSharp\LaravelFilemanager\Lfm::routes(); });
Sırada .env dosyaımızda APP_URL kısmında projemizin çalıştığı yolu belirtmeliyiz.
APP_URL=http://localhost/projeadı/public
Paketimiz kuruldu, çalışmaya hazır.
Kullanmak istediğiniz editöre göre bu adresten ayarları inceleyebilirsiniz.
Ben tinymce ile devam edeceğim. Tinymce editörümüzün ayarlarını aşağıdaki gibi düzenleyelim.
<script> var editor_config = { path_absolute : "/", selector: "textarea.my-editor", plugins: [ "advlist autolink lists link image charmap print preview hr anchor pagebreak", "searchreplace wordcount visualblocks visualchars code fullscreen", "insertdatetime media nonbreaking save table contextmenu directionality", "emoticons template paste textcolor colorpicker textpattern" ], toolbar: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image media", relative_urls: false, file_browser_callback : function(field_name, url, type, win) { var x = window.innerWidth || document.documentElement.clientWidth || document.getElementsByTagName('body')[0].clientWidth; var y = window.innerHeight|| document.documentElement.clientHeight|| document.getElementsByTagName('body')[0].clientHeight; var cmsURL = editor_config.path_absolute + 'laravel-filemanager?field_name=' + field_name; if (type == 'image') { cmsURL = cmsURL + "&type=Images"; } else { cmsURL = cmsURL + "&type=Files"; } tinyMCE.activeEditor.windowManager.open({ file : cmsURL, title : 'Filemanager', width : x * 0.8, height : y * 0.8, resizable : "yes", close_previous : "no" }); } }; tinymce.init(editor_config); </script>
Galerimizin boş olduğunu görüyoruz. Sol tarafta görüldüğü gibi klasörleme yapabiliriz. İstediğiniz içeriğe göre resim klasörleride oluşturabiliriz. Hemen bir resim ekleyerek devam edelim.
New Folder ile klasör oluşturabilir, Upload ile dosya yükleyebiliriz.
Dosya yükleme kısmı için dropzone kullanılmış. Yüklemek istediğimiz dosyayı sürekle bırak ile veya dosyayı seçerek yükleyebiliriz.
Ben resim dosyası seçtim ve yükledim.
Resim files klasörüne geldi. Dosyayı seçelim.
Resmi seçtikten sonra üst tarafta açılan menülerden resme müdahele edebiliriz. Resmi yazımıza ekleyerek devam edelim.
ve resmimiz geldi.
Not: Eğer bir hata alırsanız aşağıdaki komutu çalıştırıp deneyebilirsiniz.
php artisan serve
Umarım faydalı olmuştur, İyi çalışmalar! 😊
Detaylı bilgi için: https://unisharp.github.io/laravel-filemanager/installation
Yorumlar Henüz yorum yapılmamış
Yeni Yorum