آپلود اجباری تصویر شاخص در مطالب وردپرس

تصویر شاخص اجباری

ارسال یک مطلب در وردپرس کار آسانی است، اما در مواقعی تنها ارسال مطلب کافی نیست! اخبار، نوشته ها، محصولات و… همگی برای ایجاد ارتباطی بهتر با مخاطب، حداقل به یک تصویر شاخص نیاز دارند. حال گاهی اوقات نویسندگانی هستند که بارگذاری تصویر شاخص را فراموش میکنند و یا آن را به کلی نادیده میگیرند…! پس شما چگونه میتوانید استفاده از تصویر شاخص را برای کاربران و نویسندگان خود اجباری کنید تا آنها نتوانند نوشته خود را ارسال کنند، مگر اینکه تصویر شاخص را آپلود کرده باشند؟!؟ در این مطلب با یک هک ساده وردپرس در خدمت شما هستیم تا به چگونگی این قضیه پی ببریم…

برای این منظور، تنها باید فایل functions.php قالب خود را باز کنید و کد زیر را به انتهای آن بچسبانید:

add_action('save_post', 'wpds_check_thumbnail');
add_action('admin_notices', 'wpds_thumbnail_error');

function wpds_check_thumbnail($post_id) {

    // change to any custom post type 
    if(get_post_type($post_id) != 'post')
        return;
    
    if ( !has_post_thumbnail( $post_id ) ) {
        // set a transient to show the users an admin message
        set_transient( "has_post_thumbnail", "no" );
        // unhook this function so it doesn't loop infinitely
        remove_action('save_post', 'wpds_check_thumbnail');
        // update the post set it to draft
        wp_update_post(array('ID' => $post_id, 'post_status' => 'draft'));

        add_action('save_post', 'wpds_check_thumbnail');
    } else {
        delete_transient( "has_post_thumbnail" );
    }
}

function wpds_thumbnail_error()
{
    // check if the transient is set, and display the error message
    if ( get_transient( "has_post_thumbnail" ) == "no" ) {
        echo "<div id='message' class='error'><p><strong>شما باید قبل از ارسال مطلب یک تصویر شاخص آپلود کنید. نوشته شما ذخیره شما ذخیره خواهد شد، اما قابل نمایش نیست!</strong></p></div>";
        delete_transient( "has_post_thumbnail" );
    }

}

شما همچنین میتوانید این کد را ویرایش کنید و پیام دلخواه خود را روی آن قرار دهید…
کاربردی نبود؟! البته که بود! 🙂

این اولین نوشته "سورنا شکوری" در دنیای وردپرس است! در صورت علاقه مندی، می توانید این مطلب را لایک کرده و به اشتراک بگذارید.

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

  1. ممنون از ویرایش شما آقای میرزایی عزیز
    با این ویرایش مطلب خیلی روان تر و قابل فهم تر شده
    💬❤

    توسط سورنا پاسخ

    1. ممنون سورنا جان. امیدوارم که بتونیم مجددا از نوشته های شما در دنیای وردپرس استفاده کنیم. ❤

      توسط علی میرزائی پاسخ

دیدگاه خود را بیان کنید