نمایش تعداد کل نوشته های سایت وردپرس
همین طور که به طول عمر یک سایت افزوده می شود، قطعاً باید به تعداد نوشته ها و محتویات آن هم افزوده گردد. عدد تعداد نوشته های منتشر شده در سایت، از طریق بخش پیشخوان برای مدیر یا مدیران سایت مشهود است. اما نمایش این تعداد برای بازدید کنندگان هم میتواند جذاب باشد. هم برای آنها که بدانند چقدر سایت فعال است. هم برای ما به عنوان مدیر سایت که به دیگران نشان دهیم سایت ما با چه سرعتی به روز می شود. امکان نمایش تعداد کل نوشته های سایت وردپرس به واسطۀ توابع و اشیاء وردپرس شدنی است. هر چند که حتی ممکن است افزونه ای هم برای این کار وجود داشته باشد که معمولاً افزونه های آمارگیر می توانند برای این منظور استفاده شوند. اما بنده در اینجا یکی از توابع وردپرس را برای این کار معرفی می کنم که در هر کجای قالب خود می توانید از آن استفاده نمایید.
قصد ما استفاده از تابع wp count posts برای نمایش تعداد نوشته های وردپرس است. این تابع یکی از جذاب ترین توابع وردپرس برای گرفتن اطلاعاتی راجع به نوشته های سایت است. هر نوع نوشته ای که درون هر Post Type ای قرار بگیرد، این تابع قابلیت دریافت اطلاعات آن را دارد. چیزی که این تابع بر می گرداند، در اصل یک شیء یا همان Object است. که به طور مستقیم نمی توان از آن استفاده کرد. باید مقدار آن را درون یک متغیر ریخت و سپس یک مشخصه یا Property از آن را گرفت که مد نظر ماست. حالا می توانیم آن را درون صفحه به بازدید کنندگان سایت نمایش دهیم.
ساختار این تابع به این صورت است:
<?php wp_count_posts( $type, $perm ); ?>
دارای دو تا نشانوند است که وارد کردن هر دوی آنها اختیاری است و الزامی به تعیین آنها نداریم. اما برای کامل شدن بحث، خدمت شما خواهم گفت که هر کدام از این نشانوندها چه کاربردی دارند.
اولین نشانوند با عنوان$type نوع نوشته یا همان post type را مشخص می کند که باید از نوع رشته باشد. مقدار پیش فرض این نشانوند post است اطلاعات مربوط به نوشته های سایت را بر می گرداند. نه اطلاعات برگهها و نه اطلاعات هیچ یک از نوع نوشته های دیگر.
نشاوند بعدی $perm است که برای گرفتن تعداد نوشته های خصوصی به کاربرانی که هنگام بازدید از سایت وارد حساب خود نشده اند استفاده می گردد. اگر مقدار readable برای این نشانوند تعیین شده باشد، نوشته هایی هم که به صورت خصوصی روی سایت منتشر شده است هم شمارش می شوند. اما در حالت پیش فرض این اتفاق نمی افتد.
در زیر شما تکه کد کاملی را می بینید که بعد از اینکه از تابع wp count posts استفاده می کند برای دریافت اطلاعات نوشته ها و برگه ها، در ادامه آنها را روی صفحه چاپ می کند.
<?php // count posts $n_post = wp_count_posts(); $n_post_publish = $n_post->publish; $n_post_drafts = $n_post->draft; // count pages $n_page = wp_count_posts('page'); $n_page_publish = $n_page->publish; $n_page_drafts = $n_page->draft; ?> <ul> <!-- posts --> <li>Post publish: <? echo $n_post_publish; ?></li> <li>Post drafts: <? echo $n_post_drafts; ?></li> <!-- pages --> <li>Page publish: <? echo $n_page_publish; ?></li> <li>Page drafts: <? echo $n_page_drafts; ?></li> </ul>
بنده در اینجا تنها کد مربوط به نمایش تعداد نوشته های وردپرس را برای شما باز می کنم. بقیه موارد دقیقاً مثل همان است.
اول یک متغیر با نام n_post ساختیم که با تابع wp_count_posts() آن را مقدار دهی کردیم. الان مقدار متغیر n_post یک شیء است که مستقیم نمی توانیم از آن استفاده کنیم. باید مشخصه هایی که در اصل همان متغیرهای مد نظر ما هستند را از آن بیرون بکشیم.
در خط بعدی مشخصه publish از شیء را بیرون کشیده و داخل متغیر n_post_publish ریختیم. همین کار را برای گرفتن تعداد نوشته های پیش نویس یا draft هم در خط بعدی انجام دادیم. حالا که این دو متغیر مقدار دهی شدند، در خطوط پایانی آنها را در یک برچسب ul چاپ کردیم.
حالا برای دیگر نوع نوشته ها یا Post Type ها مثل برگه ها هم می توانیم از این روش استفاده نماییم. این بود از آموزش نمایش تعداد کل نوشته های سایت وردپرس در قالب یا در هر جایی که از کدهای php و توابع وردپرس استقبال نماید. با دیگر آموزش های کدها و توابع وردپرس همراه ما باشید.