עריכה מהירה של תמונה ראשית בוורדפרס מתוך טבלת העמודים – בלי תוסף!
🚀 הקדמה
מחפשים דרך יעילה לשנות תמונה ראשית לעמודים בוורדפרס – בלי לפתוח כל עמוד בנפרד?
במדריך הזה נלמד איך להוסיף עמודת תמונה ראשית לטבלת העמודים, ואיך לאפשר שינוי מהיר של Featured Image בלחיצה אחת, בדיוק כמו בממשקי ניהול מתקדמים.
✅ מתאים למי שבונה אתרים, מנהל תוכן או פשוט רוצה לחסוך זמן.
✳️ למה כדאי לשפר את טבלת העמודים?
ברירת המחדל של WordPress מציגה רק את שם העמוד, המחבר והתאריך.
אבל מה אם היית יכול:
לראות את התמונה הראשית של כל עמוד?
לשנות אותה בלחיצת כפתור?
לא לעבוד יותר בשיטת "פתח-שנה-שמור-חזור"?
🧠 זה חוסך זמן, מפשט תהליכים, ונותן שליטה מלאה ללא תוספים חיצוניים.
🛠️ המדריך המלא: שלב אחרי שלב
שלב 1 – הוספת עמודת תמונה ראשית לטבלת העמודים
הקוד הבא מוסיף עמודה חדשה שתציג את התמונה הראשית (אם קיימת) + כפתור להחלפה מהירה:
שלב 2 – פתיחת ספריית המדיה מתוך הטבלה בלחיצה
כאן נטען את wp.media ונחבר את כפתור "שנה תמונה" לפתיחת חלונית הבחירה של מדיה:
שלב 3 – ביצוע העדכון בפועל בשרת עם AJAX
לבסוף, נבצע את עדכון התמונה במסד הנתונים דרך AJAX מאובטח:
🌟 תוצאה בשטח
לאחר הוספת הקוד, תראו בכל שורת עמוד:
תמונה ראשית בגודל מוקטן
כפתור "שנה תמונה"
לחיצה עליו תפתח את ספריית המדיה
בחירה בתמונה – והתמונה תעודכן אוטומטית ✔️
💡 טיפים ושדרוגים אפשריים
הוספת תמיכה גם בפוסטים (
post) או מוצרים (product)אפשרות להסיר תמונה ראשית
תמיכה בעדכון ללא רענון (
AJAX + DOM)שימוש בספריית JetEngine להוספת תצוגה דומה בפרונטאנד
✍️ סיכום
שדרוג קטן = שיפור ענק בחוויית הניהול.
הוספת עמודת תמונה ראשית + עריכה בלחיצה אחת חוסכת זמן, ומעניקה לך שליטה מלאה בתוכן הוויזואלי באתר.
💬 רוצה גרסה מורחבת או להוסיף תמיכה ב־CPT?
כתבו לי בתגובות או שלחו הודעה, ואשמח לעזור לכם לשדרג גם את האדמין שלכם!
/****************************************
* קוד מאת אליצור ימיני – elitz.co.il
* שינוי תמונה ראשית מהיר בוורדפרס מתוך טבלת העמודים
* כולל הצגת תמונה + כפתור להחלפה עם wp.media + AJAX
****************************************/
/****************************************
* ✅ שלב 1: הוספת עמודת תמונה ראשית לעמודים
****************************************/
add_filter('manage_page_posts_columns', function ($columns) {
$columns['featured_image'] = 'תמונה ראשית';
return $columns;
});
add_action('manage_page_posts_custom_column', function ($column_name, $post_id) {
if ($column_name === 'featured_image') {
$thumbnail = get_the_post_thumbnail($post_id, array(60, 60));
echo '';
echo $thumbnail ?: 'אין';
echo '
';
echo '';
}
}, 10, 2);
/****************************************
* ✅ שלב 2: טעינת wp.media + JS לפתיחת מדיה והפעלת כפתור
****************************************/
add_action('admin_enqueue_scripts', function () {
wp_enqueue_media(); // טוען את מערכת המדיה של וורדפרס
// סקריפט אינליין שפותח את חלונית המדיה ומבצע את שליחת הנתונים
wp_add_inline_script('jquery-core', '
jQuery(document).ready(function($) {
$(".elitzur-set-featured").click(function(e) {
e.preventDefault();
var button = $(this);
var wrapper = button.closest(".elitzur-featured-wrapper");
var postId = wrapper.data("post-id");
var frame = wp.media({
title: "בחר תמונה ראשית",
multiple: false,
library: { type: "image" },
button: { text: "בחר תמונה" }
});
frame.on("select", function() {
var attachment = frame.state().get("selection").first().toJSON();
$.post(ajaxurl, {
action: "elitzur_set_featured_image",
post_id: postId,
attachment_id: attachment.id,
_wpnonce: elitzur_ajax.nonce
}, function(response) {
if (response.success) {
location.reload(); // רענון כדי להציג את התמונה החדשה
} else {
alert("שגיאה: " + response.data);
}
});
});
frame.open();
});
});
');
// יצירת nonce לצורך אבטחת AJAX
wp_localize_script('jquery-core', 'elitzur_ajax', array(
'nonce' => wp_create_nonce('elitzur_featured_nonce')
));
});
/****************************************
* ✅ שלב 3: AJAX שמבצע את שינוי התמונה הראשית בפועל
****************************************/
add_action('wp_ajax_elitzur_set_featured_image', function () {
check_ajax_referer('elitzur_featured_nonce'); // בדיקת אבטחה
$post_id = intval($_POST['post_id']);
$attachment_id = intval($_POST['attachment_id']);
// בדיקה שהמשתמש יכול לערוך את הפוסט
if (!current_user_can('edit_post', $post_id)) {
wp_send_json_error('אין הרשאה');
}
// שינוי התמונה הראשית
set_post_thumbnail($post_id, $attachment_id);
// החזרת הצלחה ל-AJAX
wp_send_json_success('התמונה עודכנה בהצלחה');
});





