در صفحاتی که با مجموعهای از پستها در ارتباط هستیم، لازم است از صفحه بندی استفاده کنیم تا پستها همگی به یک باره در وبسایت قرار نگیرند و به راحتی در دسترس باشند. در این مقاله قصد داریم به روش ایجاد صفحه بندی در وردپرس بدون نیاز به افزونه بپردازیم.
به کمک مطالب این مقاله میتوانید در صفحاتی مثل صفحه اصلی سایت، وبلاگ، آرشیو، فروشگاه و… برای نمایش پستها صفحه بندی ایجاد کنید.
چرا باید پستها را صفحه بندی کنیم؟
به طور پیشفرض طبق تنظیمات بخش خواندن وردپرس، فقط ۱۲پست آخر نمایش داده میشود. یعنی اگر قالب وبسایت شما از صفحه بندی(pagination) استفاده نکند، پستهای قدیمیتر وبسایت دیده نمیشوند.
ممکن است قالب وبسایت در درخواستی که برای دریافت پست به دیتابیس میزند، تعداد پستهای دریافتی را نامحدود تعریف کند که در این صورت همهی پستهای موجود یکجا بارگذاری میشوند! اشکالی که در این شرایط ایجاد میشود این است که تعداد زیادی محتوا باید همزمان لود شوند که این موضوع باعث کاهش سرعت وبسایت خواهد شد.
خب حتماً میدانید که سرعت سایت چه اهمیتی در سئو دارد! پس بهترین راه این است که یا از صفحهبندی پستها در وردپرس استفاده کنید یا به سراغ بارگذاری آجاکسی پستها بروید تا از بارگذاری یکباره تعداد زیادی پست جلوگیری شود.
کد ایجاد صفحه بندی پستها در وردپرس
خب در ادامه به سراغ روش ایجاد صفحه بندی در وردپرس با کد میرویم. برای صفحه بندی پستها در صفحات آرشیو دستهبندیها (category.php)، آرشیو تگها(tags.php)، آرشیو (archive.php)، جستجو(search.php)، صفحه اصلی (index.php) میتوانید وارد فایل مدنظر خود شوید. سپس به دنبال حلقهی اصلی نمایش پستها باشید. یعنی یک ()while که بعد از آن عبارت ()the_post نوشته شده است. این بخش از کد را دنبال کنید تا به انتهای حلقه یعنی کد endwhile برسید. حالا کافیست در همین قسمت از کد زیر استفاده کنید:
1
2
3
4
5
<?phpthe_posts_pagination(array(
'mid_size'=>5,
'prev_text'=>__('بعدی','textdomain'),
'next_text'=>__('قبلی','textdomain'),
));?>
mid_size مشخص میکند چه تعداد عدد در صفحه بندی نمایش داده شود. برای مثال در کد بالا عدد ۵ نوشته شده پس صفحات ۱ ،۲، ۳، ۴ و ۵ مشخص هستند و باقی صفحات به صورت سه نقطه نمایش داده میشوند. در قسمت prev_text و next_text هم میتوانید از فونت آیکونها استفاده کنید تا خروجی زیباییتری داشته باشید.
pagination در آرشیوهای خاص
در صفحاتی از وردپرس از کوئری استفاده میکنیم تا پستها با ویژگیهای خاصی را دریافت کنیم. مثلا پستهایی از نوع محصولات. یا تغییری در ردهبندی آنها ونحوه دریافت آنها داشته باشیم. یکی از این صفحات، آرشیو نوشتهها در بلاگ است. اگر فایلی به نام page-blog.php دارید که بخش وبلاگ سایت را ساخته ، یا صفحاتی دارید که از WP_Query برای صفحه بندی استفاده کرده، آنگاه باید ابتدا در بخش WP_Query ، کد زیر را اضافه کنید:
توصیه: اگر قصد نوشتن یک حلقه برای نمایش پستها با ویژگی خاصی دارید بهتر است به جهت سادگی صفحه بندی از WP_Query استفاده نکنید و به جای آن از query_posts کمک بگیرید. در ادامه نمونهای از صفحه بندی و نوشتن حلقه برای پستهای دلخواه در یک وبلاگ را مشاهده میکنید:
بسیار عالی و کاربردی .
ممنون از ارسال دیدگاهتون