SHET29

تغییر قالب HTML بخش نظرات وردپرس؛ راهنمای کامل

تغییر قالب HTML بخش نظرات وردپرس؛ راهنمای کامل

برای تغییر قالب HTML بخش نظرات وردپرس، اول باید بدونید قالب سایتتون کلاسیکه یا بلوکی. در قالب کلاسیک، ساختار هر دیدگاه معمولاً با فایل comments.php و تابع wp_list_comments() کنترل می‌شه. در قالب بلوکی هم می‌تونید چیدمان دیدگاه‌ها رو از ویرایشگر سایت و بدون دست‌کاری مستقیم PHP تغییر بدید.

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

آنچه در این مقاله می‌خوانید

قبل از تغییر قالب HTML بخش نظرات وردپرس چه چیزهایی رو بدونید؟

  • تفاوت قالب کلاسیک و قالب بلوکی در نمایش دیدگاه‌ها: قالب کلاسیک از فایل‌های PHP مثل comments.php استفاده می‌کنه. قالب بلوکی، چیدمان دیدگاه‌ها رو با بلوک‌هایی مثل Comment Template داخل ویرایشگر سایت می‌سازه.
  • تشخیص نوع قالب فعال سایت: اگه در مسیر «نمایش» گزینه «ویرایشگر» رو می‌بینید و با باز کردنش وارد محیط ویرایش قالب‌ها می‌شید، به احتمال زیاد قالب بلوکی دارید. اگه گزینه‌هایی مثل «سفارشی‌سازی» و «ویرایشگر پرونده پوسته» رو می‌بینید، قالب شما معمولاً کلاسیکه.
  • تهیه نسخه پشتیبان و استفاده از سایت آزمایشی: یک اشتباه کوچک در PHP ممکنه خطای جدی بسازه. پس قبل از شروع، از فایل‌ها و پایگاه داده نسخه پشتیبان بگیرید و تغییرات رو اول روی یک سایت آزمایشی امتحان کنید. یک نسخه سالم از هر فایلی که تغییر می‌دید هم روی کامپیوترتون نگه دارید تا اگه پیشخوان باز نشد، بتونید فایل رو از File Manager یا FTP برگردونید.
  • استفاده از چایلد تم: چایلد تم یا قالب فرزند، قالب کوچکیه که تغییرات شما رو جدا از قالب اصلی نگه می‌داره. با این روش، به‌روزرسانی قالب اصلی کدهای سفارشی شما رو پاک نمی‌کنه.

اگه هنوز درباره انتخاب ساختار مناسب مطمئن نیستید، راهنمای موارد مهم در انتخاب قالب وردپرس کمک می‌کنه تفاوت‌ها رو بهتر بشناسید.

قالب پیشفرض نظرات وردپرس
قالب پیشفرض نظرات وردپرس

تغییر بخش نظرات در قالب‌های کلاسیک وردپرس

در قالب کلاسیک، وردپرس معمولاً از فایل comments.php برای ساخت بخش دیدگاه‌ها استفاده می‌کنه. ما تابع نمایش فهرست دیدگاه‌ها رو به یک Callback وصل می‌کنیم. Callback یعنی تابعی که وردپرس برای ساخت HTML هر دیدگاه صداش می‌زنه.

پیدا کردن فایل comments.php در قالب

پوشه چایلد تم رو باز کنید و دنبال فایل comments.php بگردید. اگه این فایل داخل چایلد تم نیست، اول مستندات قالب والد رو بررسی کنید. در خیلی از قالب‌های کلاسیک می‌تونید نسخه اون رو از قالب اصلی کپی کنید و در همون مسیر داخل چایلد تم بذارید، ولی این روش به ساختار قالب والد بستگی داره و برای همه قالب‌ها تضمین‌شده نیست. ساختار پوشه‌ها هم باید با قالب اصلی یکسان بمونه.

در بیشتر سایت‌ها مسیر فایل شبیه wp-content/themes/your-child-theme/comments.php هست. نام پوشه چایلد تم در سایت شما فرق می‌کنه.

ویرایشگر قالب در وردپرس
ویرایشگر قالب در وردپرس

پیدا کردن تابع wp_list_comments

فایل comments.php رو باز کنید و عبارت wp_list_comments رو جست‌وجو کنید. این تابع فهرست دیدگاه‌ها رو می‌سازه و آرگومان callback بهش می‌گه برای HTML هر دیدگاه از کد سفارشی شما استفاده کنه. جزئیات این تابع در مرجع رسمی wp_list_comments در وردپرس قرار داره.

wp_list_comments( array(
    'style'      => 'ul',
    'short_ping' => true,
    'callback'   => 'mw_better_comments',
) );

نمونه Callback این مقاله برای حالت 'style' => 'ul' نوشته شده و به ساختار فهرستی دیدگاه‌ها وابسته‌ست. اگه قالب شما از ساختار یا Walker سفارشی استفاده می‌کنه، قبل از جایگزینی کد باید روش همون قالب رو بررسی کنید. اگه آرگومان‌های دیگه‌ای داخل تابع دارید، اون‌ها رو بی‌دلیل حذف نکنید. فقط 'callback' => 'mw_better_comments' رو به آرایه موجود اضافه کنید و ویرگول‌ها رو بررسی کنید.

ساخت Callback برای تغییر قالب HTML دیدگاه‌ها

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

function mw_better_comments( $comment, $args, $depth ) {
    $GLOBALS['comment'] = $comment;
    ?>
    <li <?php comment_class( 'comment-li' ); ?> id="comment-<?php comment_ID(); ?>">
        <article id="div-comment-<?php comment_ID(); ?>" class="comment-block">
            <header class="comment-header">
                <div class="comment-avatar">
                    <?php echo get_avatar( $comment, 64 ); ?>
                </div>

                <div class="comment-author-info">
                    <strong class="comment-author-name">
                        <?php echo wp_kses_post( get_comment_author_link( $comment ) ); ?>
                    </strong>

                    <a class="comment-date" href="<?php echo esc_url( get_comment_link( $comment ) ); ?>">
                        <time datetime="<?php comment_time( 'c' ); ?>">
                            <?php
                            printf(
                                esc_html__( '%1$s ساعت %2$s', 'your-child-theme' ),
                                esc_html( get_comment_date( '', $comment ) ),
                                esc_html( get_comment_time() )
                            );
                            ?>
                        </time>
                    </a>
                </div>
            </header>

            <div class="comment-content">
                <?php if ( '0' === $comment->comment_approved ) : ?>
                    <p class="comment-awaiting-moderation">
                        دیدگاه شما در انتظار بررسیه.
                    </p>
                <?php endif; ?>

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

            <div class="comment-reply">
                <?php
                comment_reply_link(
                    array_merge(
                        $args,
                        array(
                            'add_below'  => 'div-comment',
                            'depth'      => $depth,
                            'max_depth'  => $args['max_depth'],
                            'reply_text' => 'پاسخ دادن',
                        )
                    )
                );
                ?>
            </div>
        </article>
    <?php
}

عبارت your-child-theme در این نمونه، Text Domain یا شناسه ترجمه قالبه. بهتره اون رو با Text Domain واقعی چایلد تم خودتون عوض کنید. اگه این بخش براتون آشنا نیست، حذفش نکنید؛ فقط مقدار درست قالب رو جایگزین کنید.

اضافه کردن تابع سفارشی به فایل functions.php

تابع بالا رو داخل فایل functions.php چایلد تم قرار بدید. اگه فایل از قبل با <?php شروع شده، دوباره همین تگ رو اضافه نکنید. بهتره کد رو بعد از توابع موجود و بیرون از هر تابع دیگه بذارید.

برای آشنایی بیشتر با محل درست کدها، می‌تونید راهنمای ترفندهای فایل functions.php وردپرس رو هم ببینید.

نمایش متن دیدگاه و پیام در انتظار تأیید

تابع comment_text() متن دیدگاه رو نمایش می‌ده. شرط '0' === $comment->comment_approved هم بررسی می‌کنه که دیدگاه هنوز تأیید نشده یا نه. اینکه نویسنده دیدگاه بتونه متن و پیام انتظار رو ببینه، به تنظیمات دیدگاه‌ها، کوکی مرورگر، وضعیت ورود و منطق قالب بستگی داره؛ پس این حالت رو با یک دیدگاه آزمایشی بررسی کنید.

متن پیام رو می‌تونید عوض کنید، ولی بهتره واضح بگید دیدگاه ثبت شده و منتظر بررسیه. این کار می‌تونه احتمال ارسال چندباره یک دیدگاه رو کمتر کنه.

اضافه کردن لینک پاسخ به دیدگاه

تابع comment_reply_link() لینک پاسخ رو می‌سازه. مقدارهای depth و max_depth برای پاسخ‌های تودرتو مهم هستن. مقدار add_below هم باید با پیشوند شناسه عنصری هماهنگ باشه که دیدگاه داخلش قرار گرفته؛ در نمونه ما این شناسه با div-comment- شروع می‌شه.

برای اینکه فرم پاسخ بدون بارگذاری دوباره صفحه زیر دیدگاه باز بشه، قالب باید اسکریپت comment-reply رو بارگذاری کنه. خیلی از قالب‌ها این کار رو از قبل انجام می‌دن، ولی در بخش رفع خطا روش بررسی اون رو می‌بینید.

اضافه کردن اطلاعات دلخواه به قالب هر دیدگاه

لازم نیست همه اطلاعات نمونه رو نگه دارید. می‌تونید فقط مواردی رو نمایش بدید که برای کاربران سایتتون مفید هستن. بااین‌حال، حذف نام یا تاریخ ممکنه دنبال کردن گفت‌وگو رو سخت‌تر کنه.

نمایش نام نویسنده دیدگاه

get_comment_author_link() نام نویسنده رو برمی‌گردونه و اگه نویسنده نشانی وب معتبری ثبت کرده باشه، نامش رو به اون نشانی پیوند می‌ده. اگه فقط متن نام رو می‌خواید، از get_comment_author() استفاده کنید و خروجی رو با esc_html() امن کنید.

<span class="comment-author-name">
    <?php echo esc_html( get_comment_author( $comment ) ); ?>
</span>

نمایش آواتار کاربر

تابع get_avatar() تصویر آواتار دیدگاه رو می‌سازه. عدد 64 در نمونه زیر اندازه تصویر برحسب پیکسله. وردپرس ممکنه این تصویر رو از سرویس گراواتار دریافت کنه.

<?php echo get_avatar( $comment, 64 ); ?>

اگه نمی‌خواید آواتار نمایش داده بشه، همین خط و ظرف HTML اطرافش رو حذف کنید. بعد از حذف، CSS بخش سربرگ دیدگاه رو هم بررسی کنید تا فضای خالی باقی نمونه.

نمایش تاریخ و ساعت ارسال دیدگاه

get_comment_date() تاریخ و get_comment_time() ساعت رو برمی‌گردونه. بهتره این اطلاعات رو داخل تگ time بذارید و ویژگی datetime رو هم نگه دارید تا مرورگرها و ابزارهای کمکی زمان رو درست‌تر تشخیص بدن.

نمایش شناسه کاربر به‌جای نام

این تغییر برای بیشتر سایت‌ها لازم نیست و فقط وقتی کاربرد داره که شناسه داخلی کاربر بخشی از روند پشتیبانی یا مدیریت انجمن شما باشه. اگه دیدگاه رو یک کاربر واردشده فرستاده باشه، مقدار user_id شناسه حساب اون رو نگه می‌داره. برای کاربران مهمان این مقدار معمولاً صفره؛ پس باید برای حالت مهمان یک متن جایگزین داشته باشید.

<?php
if ( ! empty( $comment->user_id ) ) {
    printf( 'کاربر شماره %d', absint( $comment->user_id ) );
} else {
    echo 'کاربر مهمان';
}
?>

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

اضافه کردن کلاس‌های CSS برای طراحی ظاهر دیدگاه‌ها

تابع comment_class() کلاس‌های استاندارد وردپرس مثل وضعیت نویسنده، عمق پاسخ و نوع دیدگاه رو اضافه می‌کنه. کلاس‌های سفارشی مثل comment-block، comment-header و comment-content هم دست شما رو برای طراحی باز می‌ذارن.

.comment-block {
    padding: 1rem;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
}

.comment-header {
    display: flex;
    align-items: center;
    gap: 12px;
}

.children {
    margin-inline-start: 1.5rem;
}

این CSS فقط یک نقطه شروعه. رنگ، فاصله و اندازه‌ها رو با طراحی قالب خودتون هماهنگ کنید و حتماً نتیجه رو در موبایل هم ببینید.

تغییر بخش نظرات در قالب‌های بلوکی وردپرس

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

باز کردن قالب نوشته در ویرایشگر سایت

از پیشخوان وارد «نمایش ← ویرایشگر» بشید. این بخش همون Site Editor یا ویرایشگر سایته. بعد بخش «طراحی» یا «قالب‌ها» رو باز کنید و قالب نوشته تکی رو انتخاب کنید. اسم دقیق گزینه‌ها ممکنه با نسخه وردپرس، زبان پیشخوان یا ساختار قالب کمی فرق داشته باشه.

قبل از ویرایش، از منوی سه‌نقطه نمای فهرست رو باز کنید. نمای فهرست، ساختار تو‌در‌توی بلوک‌ها رو نشون می‌ده و پیدا کردن بخش دیدگاه‌ها رو راحت‌تر می‌کنه.

پیدا کردن بلوک دیدگاه‌ها و Comment Template

در نمای فهرست دنبال بلوک «دیدگاه‌ها» یا Comments بگردید. داخل اون معمولاً بلوک Comment Template قرار گرفته. Comment Template یعنی الگوی هر دیدگاه و مثل یک نمونه تکرارشونده کار می‌کنه؛ چیدمانی که داخلش می‌سازید برای همه دیدگاه‌ها تکرار می‌شه.

فایل comments.php
فایل comments.php

اگه بلوک دیدگاه‌ها رو نمی‌بینید، ممکنه قالب نوشته شما این بخش رو نداشته باشه. در این حالت، از درج‌کننده بلوک‌ها عبارت Comments رو جست‌وجو کنید و بلوک دیدگاه‌ها رو در محل مناسب بذارید.

تغییر چیدمان نام، آواتار، تاریخ و متن دیدگاه

Comment Template رو انتخاب کنید و بلوک‌های داخلی اون رو جابه‌جا کنید. می‌تونید بلوک آواتار دیدگاه رو کنار نام بذارید، تاریخ رو زیر نام ببرید و متن رو در یک ردیف جدا قرار بدید. برای حذف یک مورد هم همون بلوک رو انتخاب کنید و گزینه حذف رو بزنید.

برای قرار دادن چند مورد کنار هم، از بلوک «ردیف» استفاده کنید. بلوک «گروه» بیشتر برای نگه‌داشتن چند بلوک در یک ظرف مشترک و تنظیم پس‌زمینه، فاصله یا چیدمان اون‌ها کاربرد داره. برای نمونه، می‌تونید آواتار و اطلاعات نویسنده رو داخل یک ردیف بذارید و بعد از نوار کناری فاصله، رنگ و اندازه عناصر رو تنظیم کنید. تغییرات ظاهری این مسیر به PHP نیاز نداره.

ذخیره تغییرات و بررسی نتیجه در نوشته‌ها

روی «ذخیره» کلیک کنید و فهرست تغییرات رو بخونید. مطمئن بشید فقط قالب موردنظرتون تغییر می‌کنه. بعد یک نوشته دارای چند دیدگاه رو در پنجره ناشناس مرورگر باز کنید و نتیجه رو برای کاربر مهمان ببینید.

تغییر قالب نوشته ممکنه روی همه نوشته‌هایی اثر بذاره که از همون قالب استفاده می‌کنن. پس فقط به پیش‌نمایش ویرایشگر اکتفا نکنید و چند نوشته مختلف رو آزمایش کنید.

روش امن ویرایش فایل‌های قالب کلاسیک

ساخت و فعال کردن چایلد تم

چایلد تم در روش معمول ساخت، حداقل یک فایل style.css داره. سربرگ این فایل باید نام چایلد تم و مقدار Template رو داشته باشه. مقدار Template دقیقاً نام پوشه قالب والد هست. در بیشتر پروژه‌ها یک فایل functions.php هم برای کدهای سفارشی ساخته می‌شه. جزئیات ساختار درست در راهنمای رسمی چایلد تم وردپرس قرار داره.

انتخاب فایل functions.php
انتخاب فایل functions.php

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

ویرایش فایل‌ها از طریق هاست یا FTP

برای ویرایش امن‌تر می‌تونید از File Manager هاست یا FTP استفاده کنید. FTP یک روش انتقال فایل بین کامپیوتر شما و سروره. فایل رو اول دانلود کنید، یک نسخه سالم نگه دارید و بعد نسخه ویرایش‌شده رو در پوشه چایلد تم بارگذاری کنید.

اگه کد باعث خطا شد، از همین مسیر فایل خراب رو پیدا کنید و نسخه سالم رو با همون نام و در همون پوشه جایگزین کنید. این مزیت مهمیه، چون در زمان خطای PHP شاید پیشخوان وردپرس باز نشه.

کار با ویرایشگر پرونده پوسته وردپرس

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

این ویرایشگر راه برگشت مطمئنی برای همه خطاها نداره. برای تغییرهای PHP، File Manager یا FTP انتخاب امن‌تریه؛ چون حتی بعد از خراب شدن سایت هم به فایل‌ها دسترسی دارید.

وقتی ویرایشگر پرونده پوسته در پیشخوان دیده نمی‌شه

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

بررسی عملکرد قالب جدید دیدگاه‌ها

  • دیدگاه تأییدشده و در انتظار بررسی: یک دیدگاه رو تأیید کنید و یکی رو در صف بررسی نگه دارید. هر دو حالت رو با حساب واردشده و پنجره ناشناس ببینید، چون نمایش دیدگاه تأییدنشده ممکنه در این حالت‌ها فرق داشته باشه.
  • پاسخ‌های تودرتو: حداقل دو سطح پاسخ بسازید و بررسی کنید فاصله، خط اتصال و فرم پاسخ درست نمایش داده می‌شن.
  • نمایش در موبایل: عرض صفحه رو کم کنید و مطمئن بشید آواتار، نام و لینک پاسخ از کادر بیرون نمی‌زنن.
  • دسترس‌پذیری: با کلید Tab بین لینک‌ها حرکت کنید و مطمئن بشید لینک پاسخ با صفحه‌کلید در دسترسه. متن لینک باید روشن باشه، ترتیب نام، زمان، متن و پاسخ منطقی بمونه و رنگ نوشته‌ها هم از پس‌زمینه قابل تشخیص باشه.
  • کاربران مهمان و واردشده: نتیجه رو یک بار در پنجره عادی و یک بار در پنجره ناشناس مرورگر ببینید. نمایش شناسه کاربر هم باید برای مهمان‌ها حالت جایگزین داشته باشه.

اگه تعداد دیدگاه‌ها زیاده، فعال کردن صفحه‌بندی نظرات وردپرس می‌تونه خواندن صفحه رو راحت‌تر کنه. بعد از تغییر HTML، صفحه‌های مختلف دیدگاه‌ها رو هم آزمایش کنید.

رفع خطاهای رایج هنگام تغییر قالب نظرات وردپرس

رفع خطای ۵۰۰ یا خطای جدی وردپرس

این خطا معمولاً بعد از اشتباه نحوی در PHP دیده می‌شه؛ مثلاً یک پرانتز، ویرگول یا آکولاد جا افتاده. آخرین فایل ویرایش‌شده رو از File Manager یا FTP با نسخه سالم جایگزین کنید. بعد کد رو در یک محیط آزمایشی و بخش‌به‌بخش برگردونید تا خط دقیق پیدا بشه.

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

حل مشکل نمایش ندادن دیدگاه‌ها

اول مطمئن بشید نوشته دیدگاه تأییدشده داره و دیدگاه‌ها برای اون نوشته بسته نیستن. بعد بررسی کنید wp_list_comments() هنوز در حلقه درست قرار گرفته و نام Callback دقیقاً با نام تابع داخل functions.php یکیه.

اگه HTML در کد صفحه هست ولی روی صفحه دیده نمی‌شه، CSS رو بررسی کنید. ویژگی‌هایی مثل display: none، رنگ یکسان متن و پس‌زمینه یا ارتفاع ثابت ممکنه محتوا رو پنهان کنن.

حل مشکل کار نکردن لینک پاسخ

مقدار add_below رو با شناسه عنصر دیدگاه هماهنگ کنید و آرگومان‌های depth و max_depth رو نگه دارید. بعد مطمئن بشید پاسخ‌های تودرتو از مسیر «تنظیمات ← گفت‌وگو» فعال هستن.

اگه با کلیک روی پاسخ فرم جابه‌جا نمی‌شه، این کد رو در functions.php چایلد تم بذارید تا اسکریپت پاسخ در نوشته‌های دارای دیدگاه بارگذاری بشه:

function mw_enqueue_comment_reply_script() {
    if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
        wp_enqueue_script( 'comment-reply' );
    }
}
add_action( 'wp_enqueue_scripts', 'mw_enqueue_comment_reply_script' );

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

تگ بازشونده <li> در این Callback برای حالت 'style' => 'ul' نوشته شده. وردپرس در این ساختار مدیریت بستن عنصر و ساخت فهرست فرزندان رو انجام می‌ده. اگه نوع فهرست، تگ بازشونده یا تگ بسته رو بدون هماهنگی تغییر بدید، پاسخ‌ها ممکنه از والد خودشون جدا بشن.

کلاس children رو هم در CSS بررسی کنید. برای سایت فارسی بهتره از ویژگی منطقی margin-inline-start استفاده کنید تا فاصله پاسخ‌ها با جهت راست‌به‌چپ هماهنگ بمونه.

برگردوندن سایت بعد از ثبت کد اشتباه

اگه پیشخوان باز نمی‌شه، وارد File Manager یا FTP بشید و فایل خراب رو با نسخه پشتیبان جایگزین کنید. اگه نسخه سالم ندارید، پوشه چایلد تم رو موقتاً تغییرنام ندید مگر اینکه بدونید قالب جایگزین چطور فعال می‌شه؛ راه امن‌تر اینه که فقط کد تازه رو از فایل حذف کنید.

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

جمع‌بندی

برای تغییر قالب HTML بخش نظرات وردپرس، مسیر درست به نوع قالب بستگی داره. در قالب کلاسیک می‌تونید wp_list_comments() رو به یک Callback سفارشی وصل کنید و HTML هر دیدگاه رو داخل functions.php چایلد تم بسازید. در قالب بلوکی هم بهتره بلوک Comments و Comment Template رو از ویرایشگر سایت بچینید.

تغییرات رو اول روی سایت آزمایشی انجام بدید، کدهای قالب اصلی رو مستقیم دست‌کاری نکنید و حالت‌های مهمان، دیدگاه در انتظار بررسی و پاسخ تودرتو رو حتماً آزمایش کنید. با همین چند نکته، می‌تونید نام، آواتار، تاریخ، متن و لینک پاسخ رو بدون به‌خطر انداختن سایت مطابق نیازتون بچینید.

سؤالات متداول

آیا این روش روی همه قالب‌های وردپرس کار می‌کنه؟

نه، روش Callback برای قالب‌های کلاسیکه و نحوه جایگزینی فایل‌ها هم ممکنه به ساختار قالب بستگی داشته باشه. در قالب‌های بلوکی معمولاً باید بخش دیدگاه‌ها رو با بلوک Comments و Comment Template داخل ویرایشگر سایت تغییر بدید.

تغییرات رو داخل comments.php انجام بدیم یا ویرایشگر سایت؟

اگه قالب کلاسیک دارید، اول ساختار و مستندات قالب رو بررسی کنید و بعد فایل comments.php و تابع سفارشی رو داخل چایلد تم تغییر بدید. اگه قالب بلوکی دارید، بهتره از مسیر نمایش و ویرایشگر، قالب نوشته و بلوک‌های دیدگاه رو ویرایش کنید.

آیا با آپدیت قالب، تغییرات بخش نظرات پاک می‌شن؟

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

برای تغییر ظاهر دیدگاه‌ها به PHP نیاز داریم؟

برای عوض کردن رنگ، اندازه و فاصله‌ها معمولاً CSS کافیه. تغییر ساختار HTML در قالب کلاسیک به کمی PHP نیاز داره، ولی در قالب بلوکی خیلی از تغییرهای چیدمان رو می‌تونید از ویرایشگر سایت انجام بدید.

چطور نام یا آواتار کاربران رو از دیدگاه‌ها حذف کنیم؟

در قالب کلاسیک، خط مربوط به get_comment_author_link یا get_avatar و ظرف HTML اطرافش رو از Callback حذف کنید. در قالب بلوکی هم بلوک نام نویسنده یا آواتار دیدگاه رو از Comment Template پاک کنید. بعد نتیجه رو برای کاربر مهمان و واردشده بررسی کنید.

نظر شما در این مورد چیه؟

  1. U397090۲۵ دی ۱۴۰۴

    سلام ممنون بابت محتوای مفیدتون

    • تیم پشتیبانیتیم پشتیبانی۳ بهمن ۱۴۰۴

      درود بر شما
      خوشحالیم که مفید بوده براتون.

  2. U331800۱۲ دی ۱۴۰۲

    بسیار عای

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

در حال بارگذاری...

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