WPML
add_filter( 'wpml_import_get_trid_from_imported_translations', integer $trid, object $firstTranslation )
סוג
filter
קטגוריה
הכנסת תוכן
גרסת WPML
4.9.4

תיאור

פילטר זה שימושי כאשר אתה מייבא תרגומים ללא פוסט המקור המשויך אליהם (שכבר קיים באתר). הוא מאפשר לקוד צד שלישי לאחזר מזהה (ID) של רשומת תרגום (trid) כדי לחבר מחדש את התוכן המקורי לתרגומים המיובאים שלו.

מקרי שימוש:

- התכנים המקוריים קיימים באתר (לא מיובאים), בעוד שהתרגומים מיובאים ממקור חיצוני (גיליון אלקטרוני או כלי חיצוני).

- התכנים המקוריים יובאו בעבר ונתוני המטא של הייבוא שלהם נוקו; תרגומים לשפות חדשות מתווספים מאוחר יותר.

- כל תהליך עבודה שבו יש לחבר תרגומים לתכנים המקוריים באמצעות מפתח עסקי משותף (SKU, מזהה כתובת, מזהה (ID) חיצוני וכו’).

ארגומנטים

$trid (int|null)

ה־trid שפוענח על־ידי המייבא, או null אם לא נמצא כזה.

$firstTranslation (object)

אובייקט הפוסט של התרגום הראשון, עם המאפיינים: element_id, translation_group, language_code, source_language_code.

דוגמה לשימוש

add_filter( 'wpml_import_get_trid_from_imported_translations', 
function( $trid, $firstTranslation ) {
if ( $trid ) {
return $trid;
}

$sku = get_post_meta( $firstTranslation->element_id, '_sku', true );
if ( ! $sku ) {
return $trid;
}

// Find the original post with the same SKU and return its trid.
$original_id = wc_get_product_id_by_sku( $sku );
if ( ! $original_id ) {
return $trid;
}

$details = apply_filters( 'wpml_element_language_details', null, [
'element_id' => $original_id,
'element_type' => 'post_product',
] );

return $details ? $details->trid : $trid;
}, 10, 2 );

wpml_set_element_language_details, wpml_make_post_duplicates, wpml_admin_make_post_duplicates, wpml_copy_post_to_language, wpml_delete_package, wpml_register_string, wpml_register_single_string, wpml_show_package_language_ui, wpml_delete_package_action

כל 10 ההוקים בקטגוריה הכנסת תוכן →