سلام
ما به دنبال یک برنامهنویس حرفهای Laravel برای سایت amlakesfahan.com هستیم تا تغییرات زیر را پیادهسازی کند:
شرح پروژه:
کوتاه و بهینه کردن URLهای دستهبندی به صورت SEO-friendly.
بهینهسازی URLهای فیلترها مانند قیمت، متراژ، نوع ملک و سایر فیلترها.
تبدیل URLهای فعلی از ساختار Query String به شکل خوانا و بهینه.
مثال:
از: amlakesfahan.com/?category=فروش-باغ-و-ویلا-زمین-کشاورزی-و-باغی&parent=33&price_min=500&price_max=1000
به: amlakesfahan.com/اصفهان/باغ-ویلا/زمین-کشاورزی/قیمت-500-1000
تنظیمات لازم در routes/web.php، کنترلرها و مدلها برای پشتیبانی از دستهبندی و فیلترهای مختلف.
پیادهسازی slug خودکار برای دستهبندیها و فیلترها با پکیج spatie/laravel-sluggable.
اعمال تغییرات در بخش مدیریت و فرمهای ایجاد/ویرایش دستهبندی و فیلترها.
اصلاح لینکدهیها در ویوهای سایت و اطمینان از عملکرد صحیح همه بخشها.
بهینهسازی فایل .htaccess برای بازنویسی لینکها و افزایش سرعت سایت.
مهارتهای مورد نیاز:
تسلط کامل بر Laravel.
تجربه در بهینهسازی URLها و SEO در پروژههای لاراول.
آشنایی با پیادهسازی سیستمهای فیلتر پیچیده در لاراول.
تجربه کار با پکیجهای محبوب لاراول (خصوصاً spatie/laravel-sluggable).
آشنایی با پنلهای مدیریت (مثل Voyager) یک مزیت محسوب میشود.
لطفاً رزومه و نمونه کارهای خود را ارسال کنید.
---------------------------------------------------------------------------------------------------------------------
نمونه تغییرات که یک برنامه به من داده تا برای دسته بندی تغییر کنه
آدرس دقیق هر فایل و بخشی که باید تغییر کند، به همراه کد مربوطه آورده شده است:
1. ویرایش فایل مسیرها:
آدرس فایل:
routes/web.php
تغییرات:
Route::get('/{city}/{category}/{subcategory}', [CategoryController::class, 'showCategory']) ->name('دسته بندی.نمایش')
2. ویرایش یا ساخت کنترلر:
آدرس فایل:
app/Http/Controllers/CategoryController.php
(اگر این کنترلر وجود ندارد، باید بسازید.)
تغییرات در کنترلر:
namespace App\Http\Controllers; از Illuminate\Http\Request استفاده کنید. از App\Models\Property استفاده کنید. class CategoryController extends Controller { function public showCategory($city, $category, $subcategory) { $properties = Property::where('city_slug', $city) ->where('category_slug', $category) ->where('subcategory, -subcategory); نمای برگشت('خواص.شاخص', compact('properties')); } }
3. ویرایش مدل دستهبندی:
آدرس فایل:
app/Models/Category.php
(اگر مدل دستهبندی، ایجاد کنید یا از مدل Property استفاده کنید.)
تغییرات در مدل برای ساخت Slug خودکار:
use Spatie\Sluggable\HasSlug; از Spatie\Sluggable\SlugOptions استفاده کنید. class Category extends Model { use HasSlug; تابع عمومی getSlugOptions() : SlugOptions { return SlugOptions::create() ->generateSlugsFrom('name') ->saveSlugsTo('slug'); } }
4. ویرایش فرمهای مدیریت برای افزودن slug:
آدرس فایلها (بسته به پنل مدیریت شما متفاوت است):
اگر از Voyager استفاده کنید:
مسیر: resources/views/vendor/voyager/categories/edit-add.blade.php
این فیلد را به فرم اضافه کنید:
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRuleindex.php[L]
6. ویرایش فایلهای ویو برای لینک دهی صحیح به دستهبندیها:
آدرس فایلها (بسته به قالب شما متفاوت است):
source/views/ (فایلهای قالب دستهبندی، فهرستها یا املاک)
به عنوان مثال کد برای پیوند دادن:
{{ $property->title }}
با دسته بندی این دسته:
tps://amlakesfahan.com/?category=فروش-باغ-و-ویلا-زمین-کشاورزی-و-باغی&parent=33
به این شکل تغییر میکند:
amlakesfahan.com/اصفهان/باغ-ویلا/زمین-کشاورزی
یکی از بستهها را برای افزایش تعداد پیشنهاد خود انتخاب کنید
بسته پیشنهاد ساده
BASIC
۲۰
۱۰
هزارتومان
یک ماهه
تعداد پیشنهاد
۱۰ پیشنهاد
بسته پیشنهاد پیشرفته
ADVANCED
۳۵
۲۰
هزارتومان
یک ماهه
تعداد پیشنهاد
۲۵ پیشنهاد
بسته پیشنهاد حرفهای
PRO
۵۰
۳۵
هزارتومان
یک ماهه
تعداد پیشنهاد
۵۰ پیشنهاد
پیشنهاد ها به صورت یک ماهه هستند و در صورت عدم استفاده منقضی می شوند.
گزارش تخلف
۰ / ۱۵
فعالسازی مجدد پروژه
کارفرمای گرامی برای فعالسازی مجدد پروژه خود، دو گزینه پیش روی شماست: ارتقا به پروژه ویژه یا نردبان، و یا ثبت مجدد آن به صورت رایگان. هر دو گزینه باعث خواهند شد پروژه شما در صدر فهرست پروژهها قرار گرفته و به سرعت مورد توجه فریلنسرها قرار گیرد. جهت تسریع در روند انجام پروژه و دریافت پیشنهادهای باکیفیتتر، پیشنهاد میشود پروژه خود را به نردبان یا ویژه ارتقا دهید.