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