הגדרת תמונה ראשית לפוסט בצורה אוטומטית

הסניפט הבא ייקח את התמונה הראשונה שהוא מוצא בפוסט ויגדיר אותה כתמונה ראשית (featured image). במידה ותבחרו תמונה ראשית הוא יראה אותה כמובן.

function autoset_featured() {
          global $post;
          $already_has_thumb = has_post_thumbnail($post->ID);
              if (!$already_has_thumb)  {
              $attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" );
                          if ($attached_image) {
                                foreach ($attached_image as $attachment_id => $attachment) {
                                set_post_thumbnail($post->ID, $attachment_id);
                                }
                           }
                        }
      }
add_action('the_post', 'autoset_featured');
add_action('save_post', 'autoset_featured');
add_action('draft_to_publish', 'autoset_featured');
add_action('new_to_publish', 'autoset_featured');
add_action('pending_to_publish', 'autoset_featured');
add_action('future_to_publish', 'autoset_featured');
מצאתם טעות? הסניפט לא עובד לכם? רשמו לי בתגובות ואני מבטיח לטפל בכך במהרה ולספק סניפט תקין...
1תגובות...
  • שמואל גרול 19 בספטמבר 2019, 17:52

    האם יש משו כזה שלוקח את התמונה הראשונה ( html ) בעמוד מוצר (ווקומורס) ועושה אותה הראשית ?
    אני חייב ויוכיר לך תודה אם יש דבר כזה .

השאירו תגובה

Up!