פרטי השיעור
שיעור 5.5: עבודה עם WordPress REST API ליבוא פוסטים מותאמים אישית
במקרים מסוימים, נרצה לייבא נתונים ממערכת חיצונית שאינה קובץ CSV אלא דרך API חיצוני. WordPress כולל ממשק API חזק שמאפשר לנו לייבא נתונים מבחוץ וליצור פוסטים מותאמים אישית בקלות.
דוגמת קוד לייבוא פוסטים דרך API
<?php
// URL של ה-API
$api_url = 'https://example.com/api/properties';
// קריאת הנתונים מה-API
$response = wp_remote_get($api_url);
$data = json_decode(wp_remote_retrieve_body($response), true);
// מעבר על כל הנכסים וייבואם ל-WordPress
foreach ($data as $property) {
$post_id = wp_insert_post(array(
'post_title' => $property['title'],
'post_content' => $property['description'],
'post_type' => 'property',
'post_status' => 'publish',
));
// הוספת שדות מותאמים אישית
if ($post_id) {
update_post_meta($post_id, 'price', $property['price']);
update_post_meta($post_id, 'rooms', $property['rooms']);
update_post_meta($post_id, 'size', $property['size']);
update_post_meta($post_id, 'floor', $property['floor']);
update_post_meta($post_id, 'owner_id', $property['owner_id']);
}
}
?>
<?php
// URL של ה-API
$api_url = 'https://example.com/api/properties';
// קריאת הנתונים מה-API
$response = wp_remote_get($api_url);
$data = json_decode(wp_remote_retrieve_body($response), true);
// מעבר על כל הנכסים וייבואם ל-WordPress
foreach ($data as $property) {
$post_id = wp_insert_post(array(
'post_title' => $property['title'],
'post_content' => $property['description'],
'post_type' => 'property',
'post_status' => 'publish',
));
// הוספת שדות מותאמים אישית
if ($post_id) {
update_post_meta($post_id, 'price', $property['price']);
update_post_meta($post_id, 'rooms', $property['rooms']);
update_post_meta($post_id, 'size', $property['size']);
update_post_meta($post_id, 'floor', $property['floor']);
update_post_meta($post_id, 'owner_id', $property['owner_id']);
}
}
?>
הסבר הקד:
wp_remote_get
: קריאה ל-API חיצוני והבאת הנתונים.json_decode
: הפיכת המידע מ-JSON למערך שניתן לעבוד איתו ב-PHP.wp_insert_post
: יצירת פוסטים חדשים על סמך הנתונים שהתקבלו מה-API.
סיכום מודול 5
במודול זה למדנו כיצד לרשום פוסטים מותאמים אישית (CPT) ב-WordPress ולהשתמש בכלים שונים לייבוא נתונים, כגון:
- יצירת CPT ב-WordPress באמצעות PHP.
- יבוא פוסטים מותאמים אישית באמצעות WP CLI.
- יבוא נתונים מקובצי CSV לסוגי פוסטים מותאמים אישית.
- עבודה עם API כדי לייבא נתונים ממערכות חיצוניות.
כל הכלים האלה מאפשרים לנהל כמויות גדולות של מידע ולייבא נתונים חיצוניים ל-WordPress בצורה יעילה.