رفتن به مطلب

نیاز به تأیید برای نمایش دیدگاه ها به جز دسته های خاص


پست های پیشنهاد شده

سلام. من میخوام دیدگاه های ارسال شده در پست های دسته خاص بعد از تأیید نمایش داده شوند و در دسته های خاص دیگر بدون تأیید.

اگر نیاز به توضیح بیشتر داره باید اینطور بگم:

مثلا می خوام نظراتی که در پست های دسته اخبار ارسال می شوند بدون تأیید کردن نمایش داده شوند.

ولی نظراتی که در پست های دسته آموزش ارسال می شوند حتما باید توسط مدیریت تأیید شوند تا نمایش داده شوند.

در تنظیمات گفتگو فقط میشه برای تمامی پست ها تعیین کرد که تأیید بشن یا خیر.

اگر دوستان در این باره راهنمایی کنند ممنون میشم. خودم سعی کردم یه کارهایی بکنم ولی متأسفانه موفق نشدم.

ممنون

لینک به ارسال

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

لینک به ارسال

اگه یکم راهنمایی کنید که چطور این کار رو کنم ممنون میشم. چطور دو فایل بذارم و چطورر شرط براشون تعیین کنم؟

چون نمی خوام دیدگاه هایی که در موضوع اخبار ارسال میشن در دیدگاه های در انتظار تأیید قرار بگیرند. و مستقیما به صورت تأیید شده ثبت بشن.

و نظراتی که در بخش اموزش ارسال می شوند چون نیاز به پاسخ دارند میخوام که به قسمت در انتظار تأیید قرار بگیرند تا بتونم به راحتی جواب بدم.

اگه این کاری که گفتید چیزی که میخوام هست ممنون میشم کمی در باره آن بیشتر توضیح بدین

ممنون

لینک به ارسال

شما بخش دیدگاه ها رو الان چطور در پوسته فراخوانی می کنید؟

لینک به ارسال

این کد رو در فایل single گذاشتم:

<?php comments_template('/comments.php',true); ?>

محتویات فایل comments هم پیوست کردم.

comments.php

ویرایش شده توسط hoomanhpc2
لینک به ارسال

یک فایل دیگه برای دیدگه بسازید و شرط تایید رو ازش بردارید

بعد مثلا میشه :

if(in_category(10)){
comments_template('/comments.php',true);
}else{
comments_template('/comments2.php',true);
}

لینک به ارسال

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

لینک به ارسال

این شرطی هست که داره میگه بخش دیدگاه ها باز هست:

<?php if ('open' == $post->comment_status) : ?>

لینک به ارسال

اگه اشتباه نکنم این شرطی هست که میگه اگه دیدگاه ها باز باشه فرم ارسال دیدگاه نمایش داده بشه.

که من به این نیازی نداره. من میخوام کاری کنم که دیدگاه ها به صورت تأیید شده ارسال بشن. این شرط نمایش هست

لینک به ارسال

این شرط می گه اگر حالت دیدگاه open بود (مجاز برای نمایش) حالت true را اجرا کن

این شرط را بر می دارید و همینطور


<?php endif;?>

مرتبط با این شرط

یا شرط را به این صورت تغییر بدید


<?php if ('open' == $post->comment_status or "hold"== $post->comment_status) : ?>

لینک به ارسال

این کد را


<?php wp_list_comments("callback=mytheme_comment"); ?>

را با


<?php
$status = wp_get_comment_status( $comment_id );
if ( $status == "approved" or $status == "unapproved") {
wp_list_comments("callback=mytheme_comment");
}
?>

جابجا کنید و تست بگیرید

اگر نشد از فایل فانکشنز

فانکشنز با نام mytheme_comment را بیابید و بگذارید اینجا

لینک به ارسال

وقتی جایگزین کردم دیگه هیچ دیدگاهی نمایش داده نشد.

function mytheme_comment($comment, $args, $depth) {
$GLOBALS['comment'] = $comment; ?>
<article <?php comment_class(); ?> id="comment-<?php comment_ID() ?>">

<header>
<h4><?php printf(__('%s در'), get_comment_author_link()) ?> <time><?php printf(__('%1$s at %2$s'), get_comment_date(), get_comment_time()) ?></time></h4>
</header>

<div class="comment-text">
<?php comment_text() ?>
<?php if ($comment->comment_approved == '0') : ?>
<div class="comment-moderated"><?php _e('Your comment is awaiting moderation.') ?></div>
<?php endif; ?>
</div>

</article>

<?php
}

لینک به ارسال

بجای unapproved باید می نوشتم hold ولی موضوع اصلی اینه که باز پیامها را برای تایید می فرسته ولی پیامهای در انتظار تایید را هم نمایش می ده

می تونید با استفاده از


<ol>
<?php
$id = $post->ID;
$args = array(
'status' => 'hold',
'post_id' => $id,
'number' => '5',
);
$comments = get_comments($args);
foreach($comments as $comment) :
echo('<li>'.$comment->comment_author . ': <br />' . $comment->comment_content.'</li>');
endforeach;
?>
</ol>

هم نظرهای تایید نشده رو نمایش بدید

ولی برای اینکه بعضی از نظرها به صورت مستقیم تایید بشند و بعضی نه اجازه بدید یه نگاهی به مستندات بندازم شاید تونستم کدی مناسب معرفی کنم

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...