WPML

גלו את הרשימה המלאה של הקבועים וההוקים של ACF Multilingual (ACFML), עם דוגמאות לשימוש בהם בקוד שלך.

הוקים של ACF Multilingual (ACFML)

acfml_should_translate_acf_entity

הוק זה מאפשר לך לקבוע אם שדות או קבוצות שדות של ACF יתורגמו. באמצעות שימוש בפילטר זה, תוכל לדלג על תרגום של שדות או קבוצות ספציפיים בהתבסס על הלוגיקה המותאמת אישית שלך.

סוג: פילטר

זמינות: ACFML 2.1.4

פרמטרים:

$shouldTranslate
(bool) (נדרש) האם השדה או קבוצת השדות צריכים להיות מתורגמים. ברירת המחדל היא true.

$entity
(array) (נדרש) הישות שמתורגמת, שהיא מערך שדות או מערך קבוצות.

$entityType
(string) (אופציונלי) סוג הישות שמתורגמת. זה יכול להיות 'field' או 'group'.

דוגמה לשימוש בהוק:

add_filter( 'acfml_should_translate_acf_entity', function( $shouldTranslate, $entity, $entityType ) {
	if ( 'field' === $entityType ) {
		return false;
	}

	return $shouldTranslate;
} );

acfml_field_group_mode_field_translation_preference

פילטר זה מאפשר לכם לדרוס את העדפת התרגום של ברירת המחדל עבור שדות ACF כאשר קבוצת שדות משתמשת במצב Same fields או Different fields.

הערה: פילטר זה משנה רק את העדפת התרגום של ברירת המחדל, לא את ההעדפה השמורה של שדות בודדים. אם תשנה את ברירת המחדל, יהיה עליך לשמור מחדש את קבוצות השדות המושפעות כדי שברירת המחדל החדשה תחול.

סוג: פילטר

זמינות: ACFML 2.0.0

פרמטרים:

$fieldTranslationPreference (int) (נדרש) העדפת התרגום של ברירת המחדל עבור השדה. ערכים אפשריים:

  • 0לא לתרגום. WPML מתעלם מהשדה לחלוטין.
  • 1העתקה. ערך השדה מועתק לכל השפות ונשאר מסונכרן.
  • 2תרגום. ערך השדה הופך לזמין לתרגום.
  • 3העתק פעם אחת. ערך השדה מועתק לכל השפות פעם אחת, ולאחר מכן ניתן לערוך אותו בכל שפה באופן עצמאי.

$groupMode (string) (נדרש) מצב התרגום של קבוצת השדות. ערכים אפשריים: translation או localization.
$field (array) (נדרש) מערך השדות של ACF.

דוגמה לשימוש בהוק:

add_filter( 'acfml_field_group_mode_field_translation_preference', function( $fieldTranslationPreference, $groupMode, $field ) {
    $fieldType = $field['type'] ?? null;

    if ( 'link' === $fieldType ) {
        return 2; // WPML_TRANSLATE_CUSTOM_FIELD
    }

    return $fieldTranslationPreference;
}, 10, 3 );

דוגמה זו מאלצת את סוג השדה link להיות ניתן לתרגום, ודורסת את העדפת ברירת המחדל שלו copy או copy_once.

קבועים של ACF Multilingual (ACFML)

ACFML_EXCLUDE_FIELD_GROUP_STRINGS_IN_POST_JOBS

החל מ־ACFML 2.1.5, באפשרותך להשתמש בקבוע זה כדי לכלול מחרוזות של קבוצת שדות במשימת התרגום של הפוסט.

כדי להפעיל זאת, הוסיפו את השורה הבאה לקובץ wp-config.php שלכם:

define( 'ACFML_EXCLUDE_FIELD_GROUP_STRINGS_IN_POST_JOBS', false );

הערות:

  • אם יצרת משימת תרגום לפני הוספת קוד זה לקובץ wp-config.php שלך, בטל אותה וצרו אחת חדשה.
  • תוכלו לשלוח תוויות שדות ואפשרויות בחירה לתרגום דרך לוח בקרת תרגום במידת הצורך.

ACFML_HIDE_FIELD_ANNOTATIONS

לכל שדה מתורגם, ACF Multilingual מוסיף מידע על הערך בשפה המקורית.

כדי להסיר מידע זה משדות מתורגמים, תוכל להוסיף את השורה הבאה לקובץ wp-config.php של האתר שלך:

define( 'ACFML_HIDE_FIELD_ANNOTATIONS', true );

ACFML_REPEATER_SYNC_DEFAULT

באפשרותך להשתמש בקבוע זה כדי להגדיר את ערך ברירת המחדל של תכונת הסנכרון של שדה Repeater. הוא מוגדר ל־true כברירת מחדל. המשמעות היא ששדות Repeater מסונכרנים אוטומטית בין התרגומים. אם תגדיר קבוע זה כ־false, סנכרון שדה Repeater יושבת.

תוכל לדרוס את ערך ברירת המחדל של ACFML_REPEATER_SYNC_DEFAULT בקובץ functions.php של ערכת העיצוב שלך:

define('ACFML_REPEATER_SYNC_DEFAULT', false);

ACFML_SCAN_LOCAL_FIELDS

הגדרת קבוע זה כ־false משביתה את הסריקה של קובצי JSON עבור שדות מקומיים.

המשמעות היא שאם תשנה את העדפת התרגום בשדות מקומיים, היא לא תסונכרן למסד הנתונים. יהיה עליך להגדיר את העדפת התרגום באופן ידני עבור שדות.

למידע נוסף, עיין בתיעוד הרשמי של ACF בנושא שימוש ב־JSON מקומי.

נכתב על ידי Amir · עודכן לאחרונה: 30 ביוני 2026