نمایش پستهای جدید وردپرس بدون نیاز به افزونه
- مقالات آموزشی
- بروزرسانی شده در

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

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

ناحیهای مثل سایدبار یا فوتر رو باز کنید. اسم این بخشها به قالبتون بستگی داره. روی دکمه افزودن بلوک با علامت «+» بزنید و «آخرین نوشتهها» رو جستجو کنید.

بلوک رو به ناحیه دلخواه اضافه کنید و تنظیماتش رو انجام بدید. روی «بهروزرسانی» یا «ذخیره» بزنید و نتیجه رو در سایت بررسی کنید.
اگه صفحه ابزارکهای سایتتون ظاهر قدیمی داره، ممکنه بهجای بلوک با ابزارکی به نام «نوشتههای تازه» روبهرو بشید. اون ابزارک هم یک فهرست ساده میسازه، ولی گزینههای سفارشیسازی کمتری داره.
اضافه کردن آخرین نوشتهها در قالب بلوکی
- از پیشخوان وارد «نمایش ← ویرایشگر» بشید.
- بخش الگوها رو باز کنید. بسته به نسخه وردپرس و قالب، ممکنه اول لازم باشه وارد بخش «طراحی» بشید. بعد میتونید یکی از الگوها یا اجزای قالب مثل فوتر رو انتخاب کنید.
- روی بخش موردنظرتون کلیک کنید تا وارد حالت ویرایش بشید.
- دکمه «+» رو بزنید، «آخرین نوشتهها» رو جستجو کنید و بلوک رو در جای مناسب قرار بدید.
- روی «ذخیره» بزنید. وردپرس بخشهایی رو که تغییر میکنن نشون میده؛ اونها رو بررسی کنید و ذخیره نهایی رو انجام بدید.
تغییر یک الگو ممکنه روی چند صفحه اثر بذاره. مثلاً اگه بلوک رو به فوتر اضافه کنید، در همه صفحههایی که از همون فوتر استفاده میکنن دیده میشه. پس بعد از ذخیره، صفحه اصلی، یک نوشته و نسخه موبایل سایت رو بررسی کنید.
تنظیم ظاهر و محتوای بلوک آخرین نوشتهها
بعد از انتخاب بلوک، نوار کناری تنظیمات رو باز کنید. گزینههای دقیق به نسخه وردپرس، قالب و صفحهای که داخلش کار میکنید بستگی دارن. ممکنه بعضی از گزینههای زیر رو نبینید یا نام اونها کمی متفاوت باشه:
- تعداد نوشتهها: مشخص میکنه چند نوشته در فهرست دیده بشه. برای سایدبار معمولاً یک فهرست کوتاه خواناتر میمونه.
- تصویر شاخص: تصویر اصلی هر نوشته رو کنار عنوان نمایش میده. برای انتخاب عکس مناسب میتونید راهنمای تصویر شاخص وردپرس رو بخونید.
- تاریخ و نویسنده: اطلاعات بیشتری درباره هر نوشته به کاربر میده.
- محتوای نوشته: میتونید خلاصه یا بخشی از متن رو زیر عنوان نشون بدید. خلاصههای بلند فهرست رو شلوغ میکنن، پس طول اون رو کوتاه نگه دارید.
- نمای فهرستی یا شبکهای: حالت فهرستی برای فضاهای باریک مثل سایدبار مناسبه. حالت شبکهای بیشتر به درد صفحه اصلی و بخشهای عریض میخوره.
- ترتیب نوشتهها: میتونید نوشتهها رو براساس تاریخ یا عنوان مرتب کنید. برای نمایش مطالب تازه، ترتیب نزولی تاریخ رو نگه دارید.
- دستهبندی: میتونید فقط نوشتههای یک دسته مشخص رو نمایش بدید.
روش دوم: نمایش پستهای جدید با بلوک حلقه پرسوجو
بلوک حلقه پرسوجو یا Query Loop، فهرستی از نوشتهها رو براساس تنظیماتی که انتخاب میکنید میسازه. «پرسوجو» اینجا یعنی وردپرس بین محتواها میگرده و موارد هماهنگ با فیلتر شما رو پیدا میکنه.
بلوک حلقه پرسوجو چه فرقی با آخرین نوشتهها داره؟
بلوک آخرین نوشتهها برای ساخت یک فهرست سریع و ساده طراحی شده. حلقه پرسوجو کنترل بیشتری روی چیدمان هر کارت نوشته بهتون میده. مثلاً میتونید تصویر شاخص، عنوان، تاریخ، نام نویسنده، خلاصه و لینک ادامه مطلب رو جداگانه بچینید.
حلقه پرسوجو برای طراحی صفحه اصلی، صفحه فرود یا یک بخش مجلهای انتخاب مناسبتریه. ولی اگه فقط چند لینک در فوتر میخواید، بلوک آخرین نوشتهها سادهتره.
ساخت فهرست دلخواه از تازهترین نوشتهها
در ویرایشگر برگه یا ویرایشگر سایت، روی دکمه «+» بزنید و بلوک «حلقه کوئری» رو اضافه کنید.

یکی از الگوهای آماده رو انتخاب کنید یا با گزینه شروع خالی، چیدمان دلخواهتون رو بسازید.

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

داخل بخش «الگوی نوشته» کلیک کنید و اجزایی مثل تصویر شاخص، عنوان، تاریخ و خلاصه رو اضافه یا حذف کنید. تغییرات رو ذخیره کنید و ظاهر بخش رو در دسکتاپ و موبایل ببینید.
اگه بلوک گزینه «ارثبری پرسوجو از الگو» رو نشون میده، برای ساخت یک فهرست مستقل بهتره اون رو خاموش کنید. وقتی این گزینه روشن باشه، حلقه ممکنه تنظیمات صفحه بایگانی یا الگوی اصلی رو دنبال کنه و نتیجهای متفاوت با چیزی که انتظار دارید نشون بده.
روش سوم: نمایش پستهای جدید با کد PHP
اگه میخواید فهرست تازهترین نوشتهها بخشی ثابت از قالب باشه یا ساختار HTML اون رو دقیق کنترل کنید، میتونید از PHP استفاده کنید. PHP زبانیه که بخش اصلی وردپرس با اون ساخته شده و کدش روی سرور اجرا میشه.
این روش برای کاربر کاملاً تازهکار ضروری نیست. اگه با فایلهای قالب آشنا نیستید، یکی از دو روش بلوکی امنتر و سادهتره.
پیشنیازهای استفاده از کد
- نسخه پشتیبان بگیرید: قبل از تغییر فایلهای PHP، یک بکاپ سالم از فایلها و پایگاه داده سایتتون داشته باشید.
- از چایلد تم استفاده کنید: چایلد تم یا قالب فرزند، قالبی وابسته به قالب اصلیه که تغییرات اختصاصی شما رو جدا نگه میداره. با این کار، بهروزرسانی قالب اصلی کدهاتون رو پاک نمیکنه.
- جای کد رو مشخص کنید: فایل مناسب به محل نمایش بستگی داره. برای نمونه، ممکنه بخش موردنظرتون داخل فایل سایدبار، فوتر یا یک فایل الگوی اختصاصی باشه.
- اول در محیط تست امتحان کنید: اگه محیط آزمایشی یا یک نسخه غیرعمومی از سایت دارید، کد رو اول اونجا بررسی کنید تا خطای احتمالی روی سایت اصلی اثر نذاره.
- به راه برگشت دسترسی داشته باشید: اگه خطای PHP سایت رو از دسترس خارج کرد، باید بتونید از پنل هاست یا SFTP فایل تغییرکرده رو اصلاح کنید.
ویرایشگر فایل قالب برای هر سایتی در یک مسیر یکسان دیده نمیشه. در قالبهای کلاسیک ممکنه زیر «نمایش» باشه و در بعضی نصبها هم مدیر سایت اون رو غیرفعال کرده باشه. ویرایش فایل از پنل هاست یا SFTP معمولاً راه برگشت مطمئنتری در اختیارتون میذاره.
کد نمایش آخرین نوشتههای وردپرس با WP_Query
WP_Query ابزار داخلی وردپرس برای پیدا کردن نوشتهها با شرطهای مشخصه. کد زیر پنج نوشته منتشرشده اخیر رو میگیره و عنوان، لینک، تاریخ و خلاصه اونها رو نمایش میده:
<?php$recent_posts = new WP_Query( array( 'post_type' => 'post', 'post_status' => 'publish', 'posts_per_page' => 5, 'orderby' => 'date', 'order' => 'DESC', 'ignore_sticky_posts' => true, ));?><?php if ( $recent_posts->have_posts() ) : ?> <ul class="recent-posts"> <?php while ( $recent_posts->have_posts() ) : ?> <?php $recent_posts->the_post(); ?> <li> <h3> <a href="<?php echo esc_url( get_permalink() ); ?>"> <?php echo esc_html( get_the_title() ); ?> </a> </h3> <time datetime="<?php echo esc_attr( get_the_date( 'c' ) ); ?>"> <?php echo esc_html( get_the_date() ); ?> </time> <p><?php echo esc_html( get_the_excerpt() ); ?></p> </li> <?php endwhile; ?> </ul><?php else : ?> <p>هنوز نوشتهای منتشر نشده.</p><?php endif; ?><?php wp_reset_postdata(); ?>ویژگی ignore_sticky_posts باعث میشه سنجاقشده بودن یک نوشته ترتیب زمانی فهرست رو تغییر نده. اگه میخواید نوشتههای سنجاقشده طبق رفتار عادی وردپرس بالاتر دیده بشن، این خط رو حذف کنید.
تغییر تعداد نوشتههای قابل نمایش
عدد روبهروی posts_per_page تعداد نوشتهها رو تعیین میکنه. مثلاً برای نمایش هشت نوشته، این بخش رو به شکل زیر تغییر بدید:
'posts_per_page' => 8,عدد خیلی بزرگ میتونه صفحه رو شلوغ کنه و حجم محتوای خروجی رو بالا ببره. بهتره فقط بهاندازهای نوشته نمایش بدید که واقعاً برای کاربر مفیده.
نمایش عنوان، لینک، تاریخ و خلاصه نوشته
در نمونه بالا، get_the_title() عنوان، get_permalink() نشانی نوشته، get_the_date() تاریخ و get_the_excerpt() خلاصه نوشته رو برمیگردونه. اگه فقط یک فهرست ساده از عنوانها میخواید، میتونید بخشهای time و پاراگراف خلاصه رو حذف کنید.
توابع esc_url()، esc_html() و esc_attr() خروجی رو برای جای استفادهشده امن میکنن. بهتره این توابع رو از نمونه کد حذف نکنید.
نمایش پیام مناسب وقتی نوشتهای پیدا نمیشه
شرط if اول بررسی میکنه نوشتهای پیدا شده یا نه. اگه نتیجهای نباشه، متن «هنوز نوشتهای منتشر نشده» دیده میشه. میتونید این پیام رو با متن مناسب سایتتون عوض کنید.
ریست کردن اطلاعات نوشته بعد از پایان حلقه
تابع wp_reset_postdata() اطلاعات نوشته اصلی صفحه رو بعد از پایان حلقه برمیگردونه. اگه این خط حذف بشه، بخشهای بعدی قالب ممکنه عنوان، لینک یا اطلاعات یکی از نوشتههای حلقه رو بهجای محتوای اصلی نشون بدن.
نمایش پستهای جدید از یک دستهبندی خاص
گاهی نمیخواید همه نوشتههای تازه در یک فهرست دیده بشن. مثلاً ممکنه فقط بخواید آخرین آموزشها یا خبرهای سایت رو نمایش بدید. میتونید این فیلتر رو هم با بلوکهای وردپرس و هم با WP_Query انجام بدید.
فیلتر دستهبندی با بلوکهای وردپرس
- بلوک «آخرین نوشتهها» یا «حلقه پرسوجو» رو انتخاب کنید.
- نوار کناری تنظیمات بلوک رو باز کنید.
- بخش فیلتر یا دستهبندی رو پیدا کنید.
- نام دسته موردنظرتون رو جستجو و انتخاب کنید.
- تنظیمات رو ذخیره کنید و یکی از نوشتههای اون دسته رو منتشر یا بهروزرسانی کنید تا نتیجه رو ببینید.
اگه میخواید بعضی دستهها در بخشهای دیگه سایت دیده نشن، راهنمای نمایش ندادن دستهبندی خاص در صفحه اصلی رو هم ببینید.
فیلتر دستهبندی داخل کد WP_Query
برای فیلتر کردن دسته در کد، ویژگی category_name رو به آرایه WP_Query اضافه کنید:
'category_name' => 'news',بهجای news باید نامک دسته خودتون رو بنویسید. نامک با نام نمایشی دسته فرق داره و معمولاً با حروف انگلیسی و خط تیره ساخته میشه. برای پیداکردنش به «نوشتهها ← دستهها» برید و ستون «نامک» رو بررسی کنید.

اگه شناسه عددی دسته رو دارید، میتونید بهجای اون از cat استفاده کنید:
'cat' => 12,عدد ۱۲ فقط مثاله و باید اون رو با شناسه واقعی دسته خودتون جایگزین کنید.
کدوم روش برای سایت شما بهتره؟
- بلوک آخرین نوشتهها: برای یک فهرست ساده و سریع در سایدبار، فوتر یا بین محتوای یک برگه مناسبه.
- حلقه پرسوجو: وقتی چیدمان شبکهای، تصویر شاخص، خلاصه و فیلترهای بیشتری میخواید، انتخاب بهتریه.
- کد PHP: وقتی روی قالب اختصاصی کار میکنید و کنترل کامل روی HTML و منطق نمایش لازم دارید، به کارتون میاد.
برای بیشتر سایتها بهتره کار رو با بلوک آخرین نوشتهها شروع کنید. اگه امکاناتش کافی نبود، سراغ حلقه پرسوجو برید. کدنویسی زمانی ارزش داره که دقیقاً بدونید چرا بلوکها نیازتون رو برطرف نمیکنن.
نکات مهم برای نمایش بهتر آخرین نوشتهها
- فهرست رو کوتاه نگه دارید: تعداد زیاد نوشتهها پیدا کردن گزینه مناسب رو سخت میکنه.
- عنوان واضح بنویسید: کاربر باید از روی عنوان بفهمه با کلیک روی لینک چه چیزی میبینه.
- تصویرها رو سبک کنید: تصویر شاخص بزرگ میتونه سرعت بارگذاری صفحه رو پایین بیاره. اندازه نمایش و حجم فایل رو متناسب نگه دارید.
- نسخه موبایل رو ببینید: ستونهای زیاد یا عنوانهای بلند ممکنه چیدمان شبکهای رو در صفحه باریک بههم بریزن.
- قالب اصلی رو مستقیم تغییر ندید: برای کدهای اختصاصی از چایلد تم استفاده کنید تا بهروزرسانی قالب تغییراتتون رو از بین نبره.
- سرعت صفحه رو بررسی کنید: تعداد زیاد تصویر و خلاصه میتونه خروجی صفحه رو سنگین کنه. قبل و بعد از اضافه کردن بخش، سرعت و ظاهر صفحه رو مقایسه کنید.
مشکلات رایج و راهحل اونها
بلوک آخرین نوشتهها دیده نمیشه
اول مطمئن بشید تغییرات رو ذخیره کردهاید و ناحیهای که ویرایش کردید در صفحه موردنظرتون استفاده میشه. بعد کش مرورگر و کش سایت رو پاک کنید. اگه بلوک داخل یک الگوی خاصه، صفحهای رو باز کنید که واقعاً از همون الگو استفاده میکنه.
منوی ابزارکها در پیشخوان نیست
احتمالاً از قالب بلوکی استفاده میکنید. در این حالت به «نمایش ← ویرایشگر» برید و بلوک رو داخل الگو یا جزء قالب مناسب اضافه کنید. اگه هیچکدوم از این گزینهها رو نمیبینید، سطح دسترسی حساب کاربری یا تنظیمات مدیر سایت رو بررسی کنید.
نوشتههای قدیمی یا نامرتبط نمایش داده میشن
ترتیب بلوک رو روی تاریخ و حالت نزولی بذارید. فیلتر دستهبندی رو هم بررسی کنید. در حلقه پرسوجو، روشن بودن گزینه ارثبری از الگو ممکنه تنظیمات فهرست رو از صفحه بایگانی بگیره. در کد PHP هم وجود orderby => date و order => DESC رو بررسی کنید.
تغییرات کد بعد از بهروزرسانی قالب از بین میرن
این مشکل وقتی پیش میاد که فایلهای قالب اصلی رو مستقیم تغییر داده باشید. کد رو به چایلد تم منتقل کنید و قبل از بهروزرسانی بعدی، از تغییرات فعلی نسخه پشتیبان بگیرید. اگه قصد عوض کردن قالب رو دارید، چکلیست تغییر قالب وردپرس کمکتون میکنه چیزی از قلم نیفته.
ظاهر فهرست در موبایل بههم میریزه
در حالت پیشنمایش موبایل، تعداد ستونها، اندازه تصویر و فاصله بین نوشتهها رو بررسی کنید. برای سایدبار یا صفحههای باریک، حالت فهرستی معمولاً نتیجه بهتری میده. اگه از کد اختصاصی استفاده میکنید، ممکنه لازم باشه CSS واکنشگرا برای کلاس recent-posts بنویسید.
جمعبندی
برای نمایش پستهای جدید در وردپرس بدون افزونه، اول نوع قالبتون رو مشخص کنید. برای یک فهرست ساده از بلوک آخرین نوشتهها کمک بگیرید. اگه چیدمان و فیلترهای بیشتری میخواید، حلقه پرسوجو انتخاب مناسبتریه. WP_Query هم زمانی به کارتون میاد که روی فایلهای قالب کنترل دارید و خروجی کاملاً اختصاصی میخواید. در هر سه روش، نتیجه رو روی موبایل بررسی کنید و صفحه رو با تعداد زیادی نوشته شلوغ نکنید.
سؤالات متداول
چطور آخرین نوشتههای وردپرس رو بدون افزونه نمایش بدیم؟
میتونید از بلوک «آخرین نوشتهها»، بلوک «حلقه پرسوجو» یا کد PHP و WP_Query استفاده کنید. برای بیشتر سایتها، بلوک آخرین نوشتهها سادهترین انتخابه.
بلوک آخرین نوشتهها در قالب بلوکی کجاست؟
به «نمایش ← ویرایشگر» برید، الگو یا جزء قالب موردنظرتون رو باز کنید و با دکمه «+» بلوک «آخرین نوشتهها» رو اضافه کنید. نام و جای بعضی گزینهها ممکنه با نسخه وردپرس و قالبتون کمی فرق داشته باشه.
چه فرقی بین بلوک آخرین نوشتهها و حلقه پرسوجو هست؟
بلوک آخرین نوشتهها یک فهرست سریع و ساده میسازه. حلقه پرسوجو کنترل بیشتری روی چیدمان، فیلترها و اطلاعاتی مثل تصویر شاخص، تاریخ و خلاصه بهتون میده.
چطور فقط نوشتههای یک دسته خاص رو نمایش بدیم؟
در تنظیمات بلوک، دسته موردنظرتون رو انتخاب کنید. در WP_Query هم میتونید نامک دسته رو با ویژگی category_name یا شناسه دسته رو با ویژگی cat مشخص کنید.
چطور تعداد پستهای جدید رو تغییر بدیم؟
در تنظیمات بلوک، تعداد موارد رو تغییر بدید. داخل کد WP_Query هم عدد ویژگی posts_per_page تعداد نوشتههای قابل نمایش رو مشخص میکنه.
آیا برای قرار دادن کد باید فایل قالب اصلی رو ویرایش کنیم؟
نه. بهتره کد رو داخل چایلد تم قرار بدید تا با بهروزرسانی قالب اصلی از بین نره. قبل از تغییر فایلهای PHP هم از سایتتون نسخه پشتیبان بگیرید و کد رو اول در محیط تست بررسی کنید.

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