Customizing the email template and error block HTML
Feed Error Alerts uses HTML templates and placeholder tags to build alert emails. You can override and extend these templates using filters.
Main email template
gffea_email_template
The base HTML before any content is inserted. Includes default placeholders like:
{{logo_url}}
{{dashboard_url}}
{{title}}
{{message}}
{{error_blocks}}
<?php
function my_custom_error_alert_email_template( $errors ) {
// return custom HTML, including a new custom placeholder
return '
<h1>{{title}}</h1>
<p>{{message}}</p>
{{error_blocks}}
<p><a href="{{dashboard_url}}">View all errors</a></p>
<p>{{footer_text}}</p>
';
}
add_filter( 'gffea_email_template', function( $template, $errors ) {
return my_custom_error_alert_email_template($errors);
}, 10, 2 );
gffea_email_body_placeholder_values
Customize the values used to replace those placeholders:
<?php
add_filter( 'gffea_email_body_placeholder_values', function( $placeholders_values, $errors ) {
// add the value for our custom placeholder
$placeholders_values['{{footer_text}}'] = get_bloginfo('name');
return $placeholders_values;
}, 10, 2 );
Error block template
gffea_email_error_template
The base HTML of each error before placeholders are replaced. Includes default placeholders like:
{{feed_name}}
{{form_title}}
{{error_date}}
{{error}}
{{entry_id}}
{{entry_url}}
{{feed_url}}
{{form_url}}
<?php
function my_custom_error_block_template( $error ) {
// return custom HTML
return '
<p>
<strong>{{feed_name}}</strong> failed for <a href="{{entry_url}}">Entry #{{entry_id}}</a> on {{error_date}}:<br/>
<em>{{error}}</em>
</p>
';
}
add_filter( 'gffea_email_error_template', function( $template, $error ) {
return my_custom_error_block_template($error);
}, 10, 2 );
gffea_email_error_template_placeholder_values
Customize placeholder values for a single error:
<?php
add_filter( 'gffea_email_error_template_placeholder_values', function( $placeholders_values, $error ) {
// customize the value of a placeholder
$placeholders_values['{{feed_name}}'] = strtoupper( $values['{{feed_name}}'] );
return $placeholders_values;
}, 10, 2 );
Need help?
Want help integrating your own template or placeholders or have any suggestions? Contact us or browse more developer documentation.