افزودن محتوا و بنر خودکار به انتهای مقالات وردپرس (Content After Post)
با فیلتر `the_content` و بررسی شرط `is_single()`، محتوای دلخواه را به متغیر `$content` الصاق (Append) کنید.
مشخصات فنی و شناسنامه کد (Code Information)
بازبینی: 1405/06/29<?php
/**
* افزودن باکس امضا و دعوت به عضویت در خبرنامه به انتهای مقالات
*/
function bisco_append_content_after_post( $content ) {
// تنها در صفحه تکی نوشتههای وبلاگ و درون لوپ اصلی اجرا شود
if ( is_single() && is_main_query() && 'post' === get_post_type() ) {
$custom_box = '
<div class="bisco-after-post-cta" style="background:#f8fafc; border:1px solid #e2e8f0; border-radius:8px; padding:20px; margin-top:30px;">
<h4 style="margin-top:0; color:#1e293b;">آیا این مطلب برای شما مفید بود؟</h4>
<p style="color:#64748b; font-size:14px;">برای دریافت آخرین ترفندهای توسعه وب و کدهای کاربردی، در خبرنامه ما عضو شوید.</p>
<a href="/newsletter" style="display:inline-block; background:#6366f1; color:#fff; padding:8px 18px; border-radius:6px; text-decoration:none; font-weight:bold;">عضویت رایگان</a>
</div>';
$content .= $custom_box;
}
return $content;
}
add_filter( 'the_content', 'bisco_append_content_after_post' );
کد را کجا قرار دهیم؟ (Placement Guide)
کد را در functions.php قرار داده و متن و لینک را ویرایش کنید.
این کد چگونه کار میکند؟ (How it Works)
هسته وردپرس در زمان رندر متن نوشته فیلتر the_content را صدا میزند؛ این تابع متن سفارشی شما را به انتهای رشته اضافه کرده و به مرورگر تحویل میدهد.
چه زمانی از این کد استفاده کنیم؟ (Use Cases)
برای تبلیغات بنری، لینک کانالهای اجتماعی، باکس نویسنده یا نظرسنجی در پایان تمام پستها.
چه زمانی نباید از این کد استفاده کنیم؟ (Anti-patterns)
در فیدهای RSS یا آرشیوها اگر تمایل ندارید باکس در چکیده تکرار شود.
پیشنیازهای اجرا
وردپرس ۳.۰ به بالا.
نحوه تست و اطمینان از عملکرد
یکی از مقالات وبلاگ را باز کنید؛ باکس جدید به زیبایی در انتهای مطلب ظاهر خواهد شد.
نحوه بازگردانی سریع (Rollback)
کد را حذف کنید.
خطاهای رایج و راهحل رفع
فراموش کردن شرط is_main_query() که ممکن است باعث تکرار باکس در سایدبار یا ابزارک پستهای مشابه شود.
ملاحظات و نکات امنیتی
رشته الحاقی باید فاقد کدهای مخرب تزریقی باشد.
تاثیر بر سرعت و پرفورمنس
پردازش آنی بدون کوئری دیتابیس اضافی.