آموزش افزودن شمارش‌گر صفحات وردپرس بدون نیاز به نصب افزونه

5/5 - (2 امتیاز)

شمارش صفحات در وردپرس را می‌توان به عنوان یکی از مهم‌ترین ویژگی‌ها و ساختارها از نظر سئو وردپرس دانست چرا که صفحه بندی صفحات در وردپرس میتواند به موتورهای جستجوگر در شناسایی و چیدمان بهتر برگه های سایت شما کمک کند که تاثیر بسیار مفیدی در سئوی سایت وردپرسی شما به همراه خواهد داشت.

همان‌طور که می‌دانید استفاده از قابلیت شماره بندی صفحات در وردپرس بصورت پیش فرض بسیار ساده بوده و نمایش خروجی توابع آن بصورت متن می‌باشد که علاوه بر ظاهر نامناسب تاثیر منفی در سئوی سایت شما خواهد گذاشت که برای رفع این مشکل تا کنون افزونه هایی نظیر wp-pagenavi و wp page numbers و… در اختیار کاربران قرار گرفته است.

شمارشگر صفحات وردپرس

در این نوشته از وبلاگ ماندگار وب به دلیل آنکه با نصب افزونه شمارش صفحات وردپرس حجم خروجی صفحات به دلیل فراخوان کردن فایل‌ها افزایش یافته، آموزشی را برای شما دوستان عزیز آماده ساخته‌ایم که بدون نیاز به نصب هیچ افزونه‌ای به راحتی بتوانید قابلیت شمارش صفحات را به پوسته وردپرس خود اضافه نمایید.

برای اضافه کردن شمارشگر صفحات در وردپرس ابتدا می‌بایست دستور زیر را به فایل فانکشن پوسته خود اضافه نمایید (خواهشمندیم پیش از ایجاد هر تغییری در فایل فانکشن از آن نسخه‌ی پشتیبان تهیه نمایید تا در صورت بروز خطا آنرا به حالت اول بازگردانید):

function mw_pagination($pages = '', $range = 2)
{
$showitems = ($range * 2)+1;
global $paged;
if(empty($paged)) $paged = 1;
if($pages == '')
{
global $wp_query;
$pages = $wp_query->max_num_pages;
if(!$pages)
{
$pages = 1;
}
}
if(1 != $pages)
{
echo "<div class='pagination cf'>";
if($paged > 2 && $paged > $range+1 && $showitems < $pages) echo "<a href='".get_pagenum_link(1)."'>&laquo;</a>";
if($paged > 1 && $showitems < $pages) echo "<a href='".get_pagenum_link($paged - 1)."'>&lsaquo;</a>";
for ($i=1; $i <= $pages; $i++)
{
if (1 != $pages &&( !($i >= $paged+$range+1 || $i <= $paged-$range-1) || $pages <= $showitems ))
{
echo ($paged == $i)? "<span class='current'>".$i."</span>":"<a href='".get_pagenum_link($i)."' class='inactive' >".$i."</a>";
}
}
if ($paged < $pages && $showitems < $pages) echo "<a href='".get_pagenum_link($paged + 1)."'>&rsaquo;</a>";
if ($paged < $pages-1 &&  $paged+$range-1 < $pages && $showitems < $pages) echo "<a href='".get_pagenum_link($pages)."'>&raquo;</a>";
echo "</div>\n";
}
}

با اضافه کردن دستور بالا قابلیت شمارش صفحات وردپرس بدون نیاز به افزونه به پوسته وردپرس شما اضافه گردیده است. در مرحله‌ی بعد برای نمایش خروجی فانکشن باید خط‌های زیر را در هر جای قالب وردپرس که مد نظر شما برای شمارش صفحات است قرار دهید:

<div>
<?php mw_pagination(); ?>
</div>

در مرحله‌ی آخر نیز برای آرایش شمارشگر صفحات می‌توانید خط‌های زیر را به فایل شیوه نامه (style.css) پوسته وردپرس خود اضافه نمایید. در استایل زیر سعی شده است نسبت به نمایش صحیح در بیشتر پوسته‌ها مقادیر بصورت استاندارد تعریف شود و در صورت عدم نمایش صحیح می‌توانید نسبت به ثابت کردن نحوه‌ی نمایش در مقادیر زیر تغییرات ایجاد کنید:

.pagination a{
background: #eee;
border: 1px solid #dfdfdf;
color: #666;
padding: 8px 15px;
margin-left: 10px;
}
.pagination a:hover{
background: #F5F5F5;
color: #666;
}
.pagination span{
background: #3F9BBF;
border: 1px solid #3f86af;
color: #fff;
padding: 8px 15px;
margin-left: 10px;
}

امیدوار هستم آموزش اضافه کردن شمارشگر صفحات در وردپرس بدون نیاز به نصب افزونه مورد پسند شما دوستان عزیز قرار گرفته باشد.

5/5 - (2 امتیاز)

کانال تلگرام ماندگار وب

  1. مجتبی

    سلام خسته نباشید
    من ازن کد رو و افزونه و کد های زیاد دیگه ای رو تست کردم
    جواب میدن صفحه بندی سایت میاد ولی وقتی روی صفحه دوم کلیک میکنم
    همون مطالب صفحه اول رو برام میاره
    هر کاری که فکرشو بکنید کردم کوئری و…
    یک نسخه از همین قالب هم هست که صفحه بندیش کار میکنه و کد که استفاده کرده هم همین هستش
    ولی مال قالب من عمل نمیکنه ممنون میشم اگه راهنمایی کنید.

    1. امیر خلجی مهر

      درود
      چنین مواردی معمولا به خاطر درست ریست نشدن کوئری هست، در انجمن مطرح کنید تا دوستان بررسی کنند، چون نیاز به بازبینی کدهای پوسته هست:
      http://forum.wp-parsi.com/

  2. علیرضا

    سلام.
    ۱- کدومش دقیق‌تر کار می‌کنه؟ (با افزونه یا بدون افزونه؟)
    ۲- با تغییراتی مثل تغییر کلی قالب یا تغییر هاست و… آیا آمار reset میشه و از صفر شروع میشه؟ (در هر دو حالت با افزونه و بدون افزونه)

  3. علیرضا

    حالا که بحث پیرامون ابزارها و کدهای آمارگیر هست یک نکته هم که لازمه بهش اشاره کنم و از سوی عُلما مورد توجه و بررسی قرار بگیره اینه که تصور می‌کنم دو یا چند آمارگیر در صورتی که بصورت همزمان بکار گرفته بشن روی کار همدیگه تاثیر میزارن و اختلال ایجاد می‌کنن! مثلاً بنده بطور آزمایشی چهار آمارگیر همزمان ایجاد کردم. به نظرم فقط نتایج یکی از اون‌ها دقیق بود.
    wp-Post-Viwes, wp-statistics, GoStats, google analytics

    در تجربه و آزمایش به‌کارگیری همزمان این چهار مرورگر:
    * آمارگیر wp-post-viwes در همه حالات آمار دقیق ارائه داده.
    * آمارگیر wp-statistics آمار رو دقیقاً دو برابر نشون می‌ده. در تنظیمات ضریب این آمارگیر ۱ است.
    * آمارگیر GoStats نسبتاً خوبه. خطایی نداره و اگر هم داشته باشه خیلی ناچیزه.
    * اما آمارگیر google در کمال تعجب آمار رو خیلی پایین‌تر نشون میده!

    گفتم اینجا مطرح کنم شاید دوستان علاقه‌مند باشن این موضوع رو بررسی کنن

  4. حمید

    سلام داداشا خسته نباشید

    میشه بگین چجوری میشه یک عکس svg پس زمینه بندازیم برای عدد هامون,یعنی الان مربعی شکله قالب دور عددهای صفحه اما الان میخواییم که ی ایکون svg باشه

  5. ایمان

    سلام یه سوال داشتم … اگه در صفحه اصلی سایت مطالب رو به چند بخش تقسیم کرده باشیم با خاصیت که تنها مطالب دسته بندی خاصی رو در بر بگیره چجوری واسه هر بخشش یه شماره صفحات جدا به سایت اضافه کنیم ؟ لطفا در زمینه راهنمایی کنید واقعا ممنون میشم

  6. نوید

    سلام
    این صفحه بندی توی صفحه ی اصلی سایتم کار میکنه ولی حالا مشکل اینجاست که من یک صفحه کنگوری دارم با نام category-y.php وقتی که این کد رو داخل این صحفحم میزارم کد اجرا نمیشه میشه بگید مشکل از کجاست؟

    1. امیر خلجی مهر

      درود بر شما
      در انجمن بازگو کنید تا دوستان کدهای فایل شما را بررسی کنند:
      http://forum.wp-parsi.com/

  7. kayvan

    سلام من سایت رو از طریق ویژاول کامپوسر ساختم. چطوری میشه شماره گذاری صفحات را به صفحه اول سایت اضافه کرد. سایر بخشها خودشون شمارشگر صفحه دارن ولی صفحه اول که مهم هستش نداره.

  8. نیما

    سلام
    صفحه بندی داخل صفحه ی اصلی سایتم کار میکنه ولی داخل صفحه های دیگم مثل صفحه ی کتگوریم کار نمیکنه اگه میشه راهنمایی کنید چیکار کنم اینم کدهای اون صفحه ی کتگوریم

    $samsung = new WP_Query(‘post_type=samsung & posts_per_page=12’);
    while($samsung->have_posts()) : $samsung->the_post(); ?>

    اگه میشه راهنمایی کنید
    ممنون

  9. امیر

    عاشق این مطلب های بدون افزونه تون هستم نصف کارامو راه میندازین انشالله خدا هم کاراتونو راه بندازه و موفق تر باشید

  10. محمد امیری

    سلام و تشکر از کد مفید و کاربردی شما
    سوالی از خدمت شما داشتم، من از یک افزونه گروه بندی پست ها با نام WPSIREN Recent Posts By Category استفاده می کنم که بر اساس دسته بندی مطالب و نوشته ها آنها را در یک برگه نمایش می دهد. اما این افزونه متاسفانه قابلیت شماره گذاری صفحات و صفحه بندی را ندارد و تمام پست های آن دسته بندی را بطور کامل نمایش می دهد. البته با یک تنظیم می توان تعداد پست ها را محدود کرد اما پست های قدیمی تر از دسترس خارج می شوند و شماره گذاری صفحات در آن اتفاق نمی افتد. من از کد شما در این افزونه استفاده کردم ولی لینک صفحات بدرستی کار نمی کند و فقط همان آخرین صفحه را نمایش می دهد. ممنون میشم اگر راهنمایی بفرمایید.
    البته من بجای کاربرد کد شما در فایل index قالب، مجبور شدم در فایل php و css این افزونه کد را اضافه کنم.

  11. محمد

    سلام.آقا این کدها رو من توی فانگشن میزارم همه کارها رو انجام میدم موندم فقط چطور فراخوان کنم کد ها رو توی صفحه مورد نظر.اصلا گیر کردم.آقا انجمن موضوع رو پیدا نمیکنم بپرسم یه راهنمایی کنید چطور تو صفحه ایی که با المنتور مبسازم این صفجه بندی رو انجام بدم

    1. امیر خلجی مهر

      درود.
      این آموزش برای برگه‌هایی که با المنتور ایجاد می‌شوند، کارایی ندارد محمد جان.

  12. سعید

    با سلام
    ابتدا تشکر میکنم از وبسایت خوبتون همینطور زحماتی که میکشید

    من یک برگه ایجاد کردم که داخلش 20 تا کادر هستش ، که هر کادر برای معرفی یک نژاد از سگ ها هست که لینک داده شده به صفحه مربوطه.
    حالا مشکل من اینه که هم با افزونه wp-pagenavi و هم با استفاده از کدهای مختلف از جمله آموزش فوق هیچ شمارش برای صفحه بندی انتهای صفحه مورد نظرم نمیادش.
    قالبم آوادا هست
    این برگه ای که من ایجاد کردم چطور میتونم بفهمم که داخل کدام فولدر قالبم تو سی پنل قرار گرفته ؟
    در ضمن دارم با المنتور سایتمو طراحی میکنم

    ممنون میشم راهنماییم کنید

  13. سعید

    با سلام

    ممنون از مطالب مفیدتون

    سوالی که بنده دارم اینه که یک صفحه خاص ایجاد کردم برای معرفی نژادهای مختلف سگ که داخل این برگه سی تا کادر ایجاد کردم که هرکدوم از این کادرها برای معرفیه یک نژاد از سگ ها هستش که لینک داده شده به صفحه مربوط به خودش و میخوام برای سبک شدن این صفحه رو به چند صفحه تقسیم کنم.

    مشکل بنده اینه که با افزونه wp-pagenavi شماره بندی یا صفحه بندی بالا نمیاد و همینطور با کدهایی که شما در بالای همین پست ارائه کردین هم مشکلم حل نشده .
    لازم به ذکره که برای طراحی صفحاتم از المنتور استفاده میکنم و قالبم آوادا هستش.
    سوال دیگرم اینه که من چطور میتونم بفهمم که صفحه ای که ایجاد کردم در کدام از فایل های قالبم در سی پنل ایجاد شده ؟

    خیلی خیلی ممنون میشم ازتون اگه راهنماییم کنین

    1. امیر خلجی مهر

      با درود و سپاس.

      برگه‌بندی برای نوشته‌های وردپرس است نه برگه‌ها.
      برگه یا نوشته در سی‌پنل ذخیره نمی‌شود و در دیتابیس وردپرس شما است.

دیدگاه خود را بنویسید

ماندگار وب - 1400