Skip to content

Commit 520386a

Browse files
committed
gpi-enable-wpml-for-custom-messages.php: Added snippet to use WPML String Translate for custom messages.
1 parent 4eac0cd commit 520386a

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
<?php
2+
/**
3+
* Gravity Perks // Limit Submissions // Enable `WPML String Translate` for Custom Insufficient,
4+
* Exhausted and Available Inventory Messages.
5+
* https://gravitywiz.com/documentation/gravity-forms-inventory/
6+
*/
7+
add_action( 'init', function() {
8+
if ( function_exists( 'icl_register_string' ) && function_exists( 'gp_inventory' ) ) {
9+
$form_id = '26';
10+
$form = GFAPI::get_form( $form_id );
11+
foreach ( $form['fields'] as $field ) {
12+
if ( rgar( $field, 'gpiMessageInventoryInsufficient', false ) ) {
13+
$name = "inventory-insufficient-message-{$form_id}-{$field->id}";
14+
icl_register_string( 'gp-inventory', $name, $field['gpiMessageInventoryInsufficient'] );
15+
add_filter( "gpi_inventory_insufficient_message_{$form_id}_{$field->id}", function( $message ) use ( $name ) {
16+
return apply_filters( 'wpml_translate_single_string', $message, 'gp-inventory', $name );
17+
} );
18+
}
19+
if ( rgar( $field, 'gpiMessageInventoryExhausted', false ) ) {
20+
$name = "inventory-exhausted-message-{$form_id}-{$field->id}";
21+
icl_register_string( 'gp-inventory', $name, $field['gpiMessageInventoryExhausted'] );
22+
add_filter( "gpi_inventory_exhausted_message_{$form_id}_{$field->id}", function( $message ) use ( $name ) {
23+
return apply_filters( 'wpml_translate_single_string', $message, 'gp-inventory', $name );
24+
} );
25+
}
26+
if ( rgar( $field, 'gpiMessageInventoryAvailable', false ) ) {
27+
$name = "inventory-available-message-{$form_id}-{$field->id}";
28+
icl_register_string( 'gp-inventory', $name, $field['gpiMessageInventoryAvailable'] );
29+
add_filter( "gpi_inventory_available_message_{$form_id}_{$field->id}", function( $message ) use ( $name ) {
30+
return apply_filters( 'wpml_translate_single_string', $message, 'gp-inventory', $name );
31+
} );
32+
}
33+
}
34+
}
35+
} );

0 commit comments

Comments
 (0)