The gform_currency_setting_message is a Gravity Forms PHP action hook that adds a customized message after the currency drop-down menu within the Settings page of your Gravity Forms dashboard.
Usage
You can use the gform_currency_setting_message hook to display a custom message related to the chosen currency. Here’s a basic usage example:
add_action('gform_currency_setting_message', 'currency_message'); function currency_message() { // your custom code here return 'Your message goes here'; }
Parameters
- $message (string): The default message. This is an empty string which will be replaced by your custom message.
More information
See Gravity Forms Docs: gform_currency_setting_message
This action hook was originally located in GFSettings::gravityforms_settings_page() in settings.php. In Gravity Forms 2.5 it was moved to GFSetting::currency_message_callback().
Examples
Display a Message for a Specific Currency
If you want to show a message when a particular currency is selected, you can do it as follows:
add_action('gform_currency_setting_message', 'currency_message'); function currency_message() { // Get the current selected currency $currency = RGCurrency::get_currency(); if ($currency == 'USD') { esc_html_e('US Dollars is the only supported currency by this payment gateway.', 'your_text_domain_here'); } }
This code checks the currently selected currency. If it’s US Dollars, it displays a custom message.
General Warning Message
If you want to show a general warning message regardless of the selected currency, you can use this code:
add_action('gform_currency_setting_message', 'currency_message'); function currency_message() { esc_html_e('Please note that currency conversion rates may apply.', 'your_text_domain_here'); }
This code displays a warning message about potential currency conversion rates.
Different Messages for Different Currencies
If you want to display different messages for different currencies, you can do so using a switch statement:
add_action('gform_currency_setting_message', 'currency_message'); function currency_message() { // Get the current selected currency $currency = RGCurrency::get_currency(); switch ($currency) { case 'USD': esc_html_e('US Dollars is the only supported currency by this payment gateway.', 'your_text_domain_here'); break; case 'EUR': esc_html_e('Euro is currently unavailable.', 'your_text_domain_here'); break; default: esc_html_e('Your selected currency is not supported.', 'your_text_domain_here'); break; } }
In this example, different messages are displayed based on the selected currency.
Display Currency Conversion Rates
You can use an API to fetch and display currency conversion rates. Here is a simplified example:
add_action('gform_currency_setting_message', 'currency_message'); function currency_message() { // Get the current selected currency $currency = RGCurrency::get_currency(); // API call to get conversion rate (please replace with real API call) $conversion_rate = api_call_to_get_conversion_rate($currency); esc_html_e("The current conversion rate is: $conversion_rate", 'your_text_domain_here'); }
This example fetches the conversion rate for the selected currency and displays it. Remember to replace the placeholder API function with a real one.