Download the PHP package aram-zahedi/persian-sluggable without Composer
On this page you can find all versions of the php package aram-zahedi/persian-sluggable. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Table of contents
Download aram-zahedi/persian-sluggable
More information about aram-zahedi/persian-sluggable
Files in aram-zahedi/persian-sluggable
Download aram-zahedi/persian-sluggable
More information about aram-zahedi/persian-sluggable
Files in aram-zahedi/persian-sluggable
Vendor aram-zahedi
Package persian-sluggable
Short Description Generate Persian slugs when saving Eloquent models
License MIT
Homepage https://github.com/AramZahedi/persian-sluggable
Package persian-sluggable
Short Description Generate Persian slugs when saving Eloquent models
License MIT
Homepage https://github.com/AramZahedi/persian-sluggable
Keywords aram-zahedipersian-sluggable
Please rate this library. Is it a good library?
Informations about the package persian-sluggable
تولید خودکار اسلاگ (نامک) برای لاراول
This package is a localized version of Spatie\Sluggable with Persian language support.
معرفی پکیج
با استفاده از این پکیج میتوانید برای مدل های خود در لاراول به صورت خودکار اسلاگ (نامک) تولید کنید.
ورژن های پشتیبانی شده لاراول:
5.8 و 6 و 7
به مثال زیر توجه کنید:
نامک توسط کلاس Slug داخل پکیج تولید میشود که تمام فاصله داخل متن مشخص شده را به خط تیره `-` تبدیل میکند.
نصب پکیج
با استفاده از Composer دستور زير را وارد کنيد تا پکيج نصب شود.
طریقه استفاده
مدل های شما باید از Trait پکیج به اسم `AramZahedi\Sluggable\HasSlug` استفاده کند و تابع زیر را با توجه به نیاز خود در مدل تعریف کرده باشد.
مایگریشن شما نیز باید یک ستون مخصوص برای ذخیره نامک یا Slug داشته باشد.
به عنوان مثال:
همچنین در داخل فایل مایگریشن:
همچنین میتوانید کلید اصلی مدل را برای روتر به شکل زیر به نام تغییر دهید.
میخواهید نام از ترکیب دو ستون مختلف تولید شود؟ پس به این شکل عمل کنید.
به طور پیش فرض نام های تولید شده، یکتا بوده و امکان وجود نامک تکراری وجود ندارد. در صورتی که بخواهید اجازه وجود نامک های تکراری را بدهید، باید به متد getSlugOptions خط زیر را اضافه کنید:
->allowDuplicateSlugs()
به این شکل:
همچنین میتوانید حداکثر طول هر نامک را با فراخوانی تابع زیر تعیین کنید:
->slugsShouldBeNoLongerThan()
به این شکل:
البته فراموش نکنید به علت چسبیدن یک پشوند عددی به آخر بعضی نامک ها (به علت ایجاد یکتایی) ممکن است طول نامک کمی بیشتر از مقدار تعیین شده باشد.
همچنین میتوانید با فراخوانی تابع زیر، جداکننده مد نظر خود را به جای خط تیره، استفاده کنید:
->usingSeparator(".")
به این شکل:
به محض ایجاد مدل، نامک به صورت خودکار تولید میشود و میتوان دستی نامک را تغییر داد:
در صورتی که مایل باشید موقع ایجاد مدل جدید، نامک
به صورت خودکار تولید نشود
میتوانید تابع زیر را فرخوانی کنید:
->doNotGenerateSlugsOnCreate()
به اين شکل:
هر موقع مقدار name را (که تعیین کردید نامک از روی آن تولید شود) تغییر دهید، پس از ذخیره مدل، نامک نیز به طور خودکار از روی مقدار جدید مجدداً تولید میشود:
در صورتی که میخواهید پس از تغییر مقدار ستون انتخابی نا، نامک مجدداً
به صورت خودکار تولید نشود
تابع زیر را فراخوانی کنید:
->doNotGenerateSlugsOnUpdate()
به اين شکل:
این کار برای زمانی ضروری است که بخواهید از روی نامک، لینک صفحات سایت را تولید کنید که به علت اعتبار در گوگل و... نباید مقدارشان عوض شود.
هرگاه خواستید نامک مجدداً از روی ستون انتخابی ما تولید شود، میتوانید به صورت دستی تابع زیر را روی مدل خود فراخوانی کنید:
->generateSlug()
در این صورت
فراموش نکنید که حتماً با فراخوانی تابع save مدل خود را ذخیره نمایید.
تست پکیج
امنیت
در صورت بروز هر گونه مشکل میتوانید از طریق آدرس ایمیل زیر، با ما در ارتباط باشید:
All versions of persian-sluggable with dependencies
PHP Build Version
Package Version
Requires
php Version
^7.2.5
illuminate/database Version ^5.8|^6.0|^7.0
ext-ctype Version *
ext-mbstring Version *
illuminate/database Version ^5.8|^6.0|^7.0
ext-ctype Version *
ext-mbstring Version *
The package aram-zahedi/persian-sluggable contains the following files
Loading the files please wait ....