I'm using the stripe gateway to process payments. There is a piece of text that comes from woocommerce "Save to account" which isn't very descriptive for my purposes. This text is located in WC_Payment_Gateway
save_payment_method_checkbox()
method
Ideally, it'd be something like "Save my credit card details for future purchases (optional)".
Support have suggested I install a translation plugin just to change these three words, which seems to me like a huge overkill.
Any ideas on how to best change this?
I suppose that it's on checkout page… If it is the case, try the following that should do the trick:
add_filter('gettext', 'change_save_to_account_text', 100, 3 );
function change_save_to_account_text( $translated_text, $text, $domain ) {
if( $text === 'Save to account' && $domain == 'woocommerce' && is_checkout() )
{
$translated_text = __( 'Save my credit card details for future purchases (optional)', $domain );
}
return $translated_text;
}
Code goes in function.php file of your active child theme (or active theme).
If it's not on checkout page, replace
is_checkout()
by the correct conditional tag…
There are a lot of hooks
and filters
available in WooCommerce WordPress. You override layout and functionality in WordPress by using these hooks
and filters
For Example:
<p class="woocommerce-notice woocommerce-notice--success woocommerce-thankyou-order-received">
<?php echo apply_filters( 'woocommerce_thankyou_order_received_text', __( 'Thank you. Your order has been received.', 'woocommerce' ), $order ); ?>
</p>