مهدی
6 سال پیش توسط مهدی مطرح شد
1 پاسخ

تغییر آدرس های صفحه بندی لاراول برای سئوی بهینه تر

سلام
بنظرتون بهترین راهکار سفارشی سازی URL های تولید شده تابع link یا render در سیستم صفحه بندی لارول چیه ؟
به لحاظ اینکه این توابع موقعی که صفحه بندی رو ایجاد میکنن ولی مشکلی که دارن اینه که آدرس URL رو بصورت یک کوئری استرینگ معمولی در میارن که از نظر سئو خیلی مورد تایید نیست
منظور من اینه که چطور میشه این ساختار آدرس رو در سیستم صفحه بندی لاراول تغییر داد تا آدرس های سئو پسندتری تولید بشه
آدرسی که سیستم صفحه بندی لاراول تولید میکنه اینه :
https://roocket.ir/series?page=2
ولی من میخوام آدرس به این شکل تولید بشه :
https://roocket.ir/series/page/2
یا
https://roocket.ir/series/2
ممنون میشم پاسخ ساده تری ارائه بدید و حدالامکان از روشهای داخلی خود لاراول باشه و نصب پکیج یا ... در اولویت آخر پاسختون باشه
سپاس


ثبت پرسش جدید
مهدی
@code2code 6 سال پیش آپدیت شد
4

به فرم زیر عمل میکنیم

// route
Route::get('/test/{page?}', ArticleController@index);

// test/1
// test/2
// ...
//ArticleController ----
public function index($page = 1) {
    $articles = \App\Article::latest()->paginate(5, ['*'], 'page', $page);
    return view('articles.index',compact('articles'));
}

برای اینکه در موقع paginate لینک ها درست بارگذاری شوند باید از پوشه view/vendor پوشه pagination را در view کپی کرده و درون تابع render ویوو جدید مثلا default رو لود کنیم

$articles->render('pagination.default');

در اخر بااستفاده از پارامترهای که به view ارسال میشه (lastPage() و currentPage()) لینک های جدید برای صفحات رو بسازیم و تمام (که کار فوق ساده ای هست)


// parameters

 $articles->currentPage();// 5
 $articles->lastPage();// 10 

 //pervius link -> url('test/'.$articles->currentPage()-1) -> http://loclahost/test/4

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام