اضافه کردن تگهای صفحهبندی سئو در لاراول
از جمله تگ های سئو که میتواند موتورهای جستجو را در شناسایی بهتر ساختار سایت شما یاری برساند، و اثر مثبتی روی سئو سایت شما برجای بگذارد، تگهای صفحه بندی هستند.
در ادامه روش اضافه کردن تگهای مورد نظر را در فریمورک لاراول مشاهده خواهید نمود.
کدهای لازم در خروجی
شکل کدهایی که میبایست در خروجی سایت و در بخش head قرار بگیرند، شبیه قطعه کد زیر خواهند بود:
1 2 3 4 5 6 |
<head> <!-- ... --> <link rel="prev" href="http://example.com?page=1"> <link rel="next" href="http://example.com?page=3"> <!-- ... --> </head> |
استفاده از Paginator در لاراول
فریمورک لاراول دارای ابزاری قدرتمند برای صفحهبندی اطلاعات است. کدهای لازم برای تولید کدهای صفحهبندی که میبایست در بخش head سایت قرار بگیرند را در ادامه مشاهده کنید
دستورات لازم برای لاراول ۴
1 2 3 4 5 6 7 8 9 10 11 |
@if( $items->getLastPage() > 1 ) @if( $items->getCurrentPage() > 1 ) <link rel="prev" href="{{{ $items->getUrl( $items->getCurrentPage() - 1 ) }}}"> @endif @if( $items->getCurrentPage() < $items->getLastPage() ) <link rel="next" href="{{{ $items->getUrl( $items->getCurrentPage() + 1 ) }}}"> @endif @endif |
توابع صفحهبندی در لاراول ۵ تغییراتی داشتهاند در نتیجه کدهای مشابه برای لاراول ۵ به صورت زیر خواهد بود.
1 2 3 4 5 6 7 8 9 10 11 |
@if( $items->lastPage() > 1 ) @if( $items->currentPage() > 1 ) <link rel="prev" href="{{ $items->previousPageUrl() }}"> @endif @if( $items->hasMorePages() ) <link rel="next" href="{{ $items->nextPageUrl() }}"> @endif @endif |
اضافه کردن پارامترهای اضافی
کدهای بالا میبایست در فایل قالب Blade درج شوند. اگر سیستم صفحهبندی شما دارای پارامترهای اضافی باشد، لازم است تا در Controller، این پارامترها را به کوئری فراخوانی شده اضافه نمایید:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<?php // ... $search_name = request( 'name' ); $items = Item::where( 'name', $search_name ); $extra_params = [ 'name' => $search_name, ]; return view( 'items' )->with( [ 'items' => $items->paginate()->appends( $extra_params ) ] ); // ... ?> |