Description
User Story
As a developper, I want to filter the default messages and see the result in the preview mode.
Details
Each email defines the default message in a function with two filters. The first one will deprecate soon, so I prefered to use the second filter.
For some emails ('new-donor-register', new-offline-donation' after issue #6063...), the function to define the default message is a class method named get_default_email_message()
.The init(
) function calls this function as a parameter to load()
, so before the instance is loaded. And $this->config
is not yet defined.
To apply the second filter, the hook name contains $this->config['id']}
, that is not defined, and the hook name is give__get_default_email_message
.
Suggested solution
Define default_email_message after the load:
$this->config['default_email_message'] = ( false !== give_get_option( 'new-offline-donation_email_message' ) ) ? give_get_option( 'new-offline-donation_email_message' ) : $this->get_default_email_message();