صفحهبندی در وردپرس با افزونه رایگان WP-PageNavi
- افزونه وردپرسمقالات آموزشی
- بروزرسانی شده در

صفحهبندی عددی کمک میکنه کاربر بین صفحههای محصولات، مقالهها یا نتایج جستوجو راحتتر بچرخه. اینطوری برای پیدا کردن مطالب قدیمیتر فقط با دو دکمه مبهم «قبلی» و «بعدی» روبهرو نیست. خود وردپرس ابزار صفحهبندی داره و خیلی از قالبها هم شماره صفحهها رو از قبل نمایش میدن؛ پس بهتره قبل از نصب افزونه، اول امکانات قالب خودتون رو بررسی کنید.
اگه قالب سایتتون صفحهبندی عددی مناسبی نداره، افزونه رایگان WP-PageNavi میتونه انتخاب کاربردیای باشه. توی این آموزش اول روش داخلی وردپرس رو بررسی میکنیم. بعد هم نصب، تنظیم و شخصیسازی افزونه رو قدمبهقدم جلو میبریم.
آنچه در این مقاله میخوانید
آیا برای صفحهبندی به افزونه نیاز دارید؟
نه، همیشه لازم نیست افزونه نصب کنید. وردپرس برای صفحهبندی نوشتهها و فهرست مطالب ابزار داخلی داره. روشی که باید استفاده کنید، به نوع قالب سایتتون بستگی داره:
- قالب بلوکی: وارد «نمایش ← ویرایشگر» بشید، قالب موردنظرتون رو باز کنید و داخل بلوک «حلقه کوئری»، بلوک «صفحهبندی کوئری» رو اضافه یا ویرایش کنید. حلقه کوئری همون بخشی از قالب هست که فهرست نوشتهها رو نشون میده.
- قالب کلاسیک: خیلی از قالبها صفحهبندی رو بهصورت پیشفرض نشون میدن. وردپرس تابع داخلی
the_posts_pagination()رو هم برای سازندههای قالب داره. اگه صفحهبندی فعلی قالب کارتون رو راه میاندازه، نیازی به نصب افزونه ندارید.
اگه هیچکدوم از این گزینهها رو توی سایتتون ندارید، یا میخواید متنها و تعداد شمارههای صفحه رو راحتتر تنظیم کنید، WP-PageNavi انتخاب مناسبیه.
معرفی افزونه رایگان WP-PageNavi
WP-PageNavi صفحهبندی ساده قالب رو با شماره صفحهها عوض میکنه. این افزونه رایگانه و میتونید اون رو مستقیم از مخزن رسمی وردپرس نصب کنید.

طبق صفحه رسمی افزونه در زمان آخرین بررسی این مقاله، WP-PageNavi بیشتر از ۴۰۰ هزار نصب فعال داره. نسخه ۳.۰.۱ اون هم برای اجرا به وردپرس ۶.۸ یا جدیدتر و PHP 8.2 یا جدیدتر نیاز داره. این پیشنیازها ممکنه در نسخههای بعدی تغییر کنن؛ پس قبل از نصب، حتماً بخش مشخصات افزونه رو در مخزن وردپرس ببینید.
اگه سایتتون از نسخه قدیمی وردپرس یا PHP استفاده میکنه، اول از سایت نسخه پشتیبان بگیرید و بعد زیرساختش رو بهروزرسانی کنید. نصب نسخه قدیمی و بدون پشتیبانی افزونه، راه امنی نیست.
آموزش نصب و تنظیم WP-PageNavi
برای نصب افزونه، وارد پیشخوان وردپرس بشید و مسیر «افزونهها ← افزودن افزونه تازه» رو باز کنید. عبارت WP-PageNavi رو جستوجو کنید، افزونه رو نصب کنید و بعد روی «فعالکردن» بزنید. اگه قبلاً این کار رو انجام ندادید، آموزش نصب افزونه در وردپرس همه مراحل رو سادهتر براتون توضیح میده.

بعد از فعالسازی، به «تنظیمات ← راهبری برگهها» برید. ممکنه ترجمه بعضی گزینهها با توجه به نسخه وردپرس یا فایل ترجمه کمی متفاوت باشه.

تنظیم متنهای صفحهبندی
در بخش اول میتونید متن صفحه فعلی، تعداد کل صفحهها، صفحه اول، صفحه آخر، صفحه قبلی و صفحه بعدی رو تغییر بدید. کدهایی مثل %CURRENT_PAGE% و %TOTAL_PAGES% متغیر هستن؛ یعنی افزونه بهجای اونها شماره صفحه فعلی و تعداد کل صفحهها رو میذاره. بهتره این کدها رو حذف نکنید، مگر اینکه دقیقاً بدونید دنبال چه نتیجهای هستید.
اگه متن یکی از گزینهها رو خالی بذارید، ممکنه همون بخش از صفحهبندی نشون داده نشه. بعد از هر تغییر، یکی از صفحههای آرشیو سایت رو باز کنید و نتیجه رو ببینید.
تنظیم تعداد شماره صفحهها
کمی پایینتر در صفحه تنظیمات میتونید مشخص کنید چند شماره کنار صفحه فعلی دیده بشه، بازههای بزرگتر چطور نمایش داده بشن و صفحهبندی در آرشیوهای یکصفحهای دیده بشه یا نه. برای شروع بهتره تنظیمات پیشفرض رو نگه دارید و فقط متنها رو با نیاز سایتتون هماهنگ کنید.
در پایان روی «ذخیره تغییرات» بزنید. البته ذخیره تنظیمات بهتنهایی تضمین نمیکنه که شمارهها توی سایت دیده بشن؛ قالب هم باید خروجی افزونه رو فراخوانی کنه.

نمایش صفحهبندی در قالبهای کلاسیک
اول یکی از صفحههای دستهبندی، وبلاگ یا جستوجوی سایتتون رو باز کنید. اگه شماره صفحهها رو میبینید، کار این بخش تمومه و لازم نیست کدی رو تغییر بدید.
اگه هنوز فقط لینکهای قبلی و بعدی دیده میشن، قالب باید تابع WP-PageNavi رو اجرا کنه. این تغییر معمولاً داخل فایل قالب آرشیو، مثل archive.php، index.php یا home.php انجام میشه. جای دقیق کد در هر قالب فرق میکنه.
<?php wp_pagenavi(); ?>این کد باید جای تابع صفحهبندی قبلی قالب قرار بگیره؛ پس نباید بدون بررسی اون رو به انتهای یک فایل اضافه کنید. قبل از دستزدن به فایلها نسخه پشتیبان بگیرید و تغییر رو داخل چایلد تم انجام بدید. چایلد تم نسخهای وابسته به قالب اصلیه که کمک میکنه تغییراتتون بعد از بهروزرسانی قالب باقی بمونن.
اگه با PHP یا ساختار قالب آشنا نیستید، بهتره این بخش رو به طراح قالب بسپارید. حتی یک خطای کوچک در فایل PHP میتونه صفحه سایت رو از دسترس خارج کنه.
تغییر ظاهر صفحهبندی با CSS
CSS همون کدی هست که رنگ، فاصله، حاشیه و ظاهر بخشهای سایت رو تعیین میکنه. در نسخههای جدید WP-PageNavi، فایل اصلی استایل در مسیر css/wp-pagenavi.css قرار گرفته. نام قدیمی pagenavi-css.css که شاید در بعضی آموزشها ببینید، برای نسخه فعلی درست نیست.
فایلهای خود افزونه رو از ویرایشگر افزونه دستکاری نکنید، چون با بهروزرسانی افزونه تغییراتتون از بین میرن. برای تغییرهای ساده، کد CSS دلخواهتون رو در بخش CSS اضافی قالب یا محلی که سازنده قالب پیشنهاد داده بذارید. جای این بخش در قالبهای مختلف یکسان نیست.
اگه به نسخه کامل فایل استایل نیاز دارید، فایل css/wp-pagenavi.css رو از پوشه افزونه بردارید و با نام wp-pagenavi.css داخل پوشه چایلد تم بذارید. این روش از ویرایش مستقیم فایل افزونه امنتره و باعث میشه تغییراتتون بعد از بهروزرسانی افزونه باقی بمونن.
برای داشتن یک ظاهر ساده، میتونید کد زیر رو در CSS اضافی قالب بذارید و رنگهاش رو با رنگبندی سایتتون هماهنگ کنید:
.wp-pagenavi { clear: both;}.wp-pagenavi a,.wp-pagenavi span { color: #fff; text-decoration: none; background-color: #6fb7e9; border: 1px solid #b2d1e5; padding: 5px; margin: 2px;}.wp-pagenavi a:hover,.wp-pagenavi span.current { border-color: #e9f2f9; background-color: #6fb7e9;}.wp-pagenavi span.current { font-weight: bold; background-color: #3c8dc5;}بعد از ذخیره کد، صفحهبندی رو هم با موبایل و هم با کامپیوتر ببینید. شمارهها باید خوانا باشن، راحت لمس بشن و در صفحههای باریک از محدوده محتوا بیرون نزنن. اگه تغییر تازه رو نمیبینید، کش سایت و مرورگرتون رو پاک کنید.

جمعبندی
برای اضافهکردن صفحهبندی، اول سراغ امکانات داخلی وردپرس و قالبتون برید. قالبهای بلوکی بلوک «صفحهبندی کوئری» دارن و قالبهای کلاسیک هم میتونن از تابع داخلی وردپرس استفاده کنن. اگه این امکانات نیازتون رو برطرف نمیکنن، WP-PageNavi یک افزونه رایگانه که صفحهبندی عددی و امکان تنظیم متنها رو در اختیارتون میذاره.
یادتون نره قبل از نصب، نسخه وردپرس و PHP سایتتون رو با پیشنیازهای افزونه مقایسه کنید. برای تغییر کد یا استایل هم فایلهای اصلی افزونه و قالب رو دستکاری نکنید؛ چایلد تم یا بخش CSS اضافی انتخاب مطمئنتریه.
سؤالات متداول
آیا برای صفحهبندی وردپرس حتماً به افزونه نیاز داریم؟
نه. قالبهای بلوکی وردپرس بلوک «صفحهبندی کوئری» دارن و قالبهای کلاسیک هم میتونن از تابع داخلی صفحهبندی استفاده کنن. فقط وقتی افزونه نصب کنید که قالب فعلی امکانات موردنیازتون رو نداره.
چرا بعد از فعالکردن افزونه شماره صفحهها دیده نمیشن؟
احتمالاً قالب هنوز تابع صفحهبندی قبلی خودش رو اجرا میکنه. در قالب کلاسیک باید تابع WP-PageNavi در جای درست قالب قرار بگیره. اگه با PHP آشنا نیستید، بهتره این تغییر رو به طراح قالب بسپارید.
برای تغییر رنگ صفحهبندی کد CSS رو کجا بذاریم؟
برای تغییرهای ساده، کد رو در بخش CSS اضافی یا محلی که سازنده قالب پیشنهاد داده بذارید. فایلهای اصلی افزونه و قالب رو مستقیم ویرایش نکنید، چون ممکنه بعد از بهروزرسانی تغییراتتون پاک بشن.

سلام وقت بخیر
برای استفاده افزونه بهتر است یا کد؟
سلام . یک سوال داشتم . من در صفحه ایندکسم دو قسمت محصولات و نوشته ها دارم واسه اینکه برای هر قسمت جدا از wp-pagenavi یا صفحه بندی استفاده کنم باید چیکار کنم ؟ یعنی صفحه بندی محصولات میخوام از نوشته ها جدا باشه.. ممنون میشم راهنمایی کنید
سلام
باید از loop مربوط به هر کدام به صورت جداگانه استفاده کنید. برای صفحه بندی هم باید بدون افزونه و با کد این کار رو انجام بدید.
سلام ببخشید من یه مشکلی داشتم و اونم اینه که من هر وقت که این افزونه رو نصب میکنم باید به طور پیش فرض رو کتگوری های من {نوشته های کهنه تر} نوشته نشه ولی بازم همون هست!!!!!
شما هم گفتید که یه کدی رو ویرایش کنیم ولی دقیق آدرس رو نفرموده اید!!!
لطفا راهنماییم کنید!!.
سلام
کد را باید در فایل index.php و category.php جایگزین کد قبلی کنید. اگر با برنامه نویسی وردپرس آشنایی ندارید پیشنهاد می کنیم به برنامه نویس یا وردپرس کار بسپارید.
خب باشه اگه بخوام از خود وردپرس کمک بگیرم باید چه کاری انجام بدم؟؟
متوجه سوال شما نشدم. شما برای این کار باید با برنامه نویسی آشنایی داشته باشید
باشه ممنون از راهنماییتونم
سلام و درود
من پلاگین WP PageNavi را دانلود و نصب کردم و همچنین تنظیمات اولیه رو انجام دادم.
در قسمتی از آموزش گفتید:
به فولدر قالب رفته و خطی برای قدیمی ترین و جدیدترین صفحه بندی در فایل صفحه آرشیو پیدا کنید. برچسب زیر را برای قرار دادن لینک پست قبلی و لینک پست بعدی اضافه کنید:
فولدر قالب کجاست؟از کجا باید پیدا کنم و این کد را وارد کنم؟
سپاس.
سلام
باید در هاستتان به مسیر wp-content – theme بروید فولدر قالب ها در آنجاست. از یک برنامه نویس کمک بگیرید.