Edit File by line
/home/zeestwma/richards.../wp-conte.../plugins/wpforms-.../src/Emails
File: Mailer.php
$errors[] = sprintf( /* translators: %1$s - namespaced class name, %2$s - invalid email. */
[500] Fix | Delete
esc_html__( '%1$s Invalid email address %2$s.', 'wpforms-lite' ),
[501] Fix | Delete
'[WPForms\Emails\Mailer]',
[502] Fix | Delete
$email
[503] Fix | Delete
);
[504] Fix | Delete
}
[505] Fix | Delete
}
[506] Fix | Delete
[507] Fix | Delete
if ( empty( $this->get_subject() ) ) {
[508] Fix | Delete
$errors[] = sprintf( /* translators: %s - namespaced class name. */
[509] Fix | Delete
esc_html__( '%s Empty subject line.', 'wpforms-lite' ),
[510] Fix | Delete
'[WPForms\Emails\Mailer]'
[511] Fix | Delete
);
[512] Fix | Delete
}
[513] Fix | Delete
[514] Fix | Delete
if ( empty( $this->get_message() ) ) {
[515] Fix | Delete
$errors[] = sprintf( /* translators: %s - namespaced class name. */
[516] Fix | Delete
esc_html__( '%s Empty message.', 'wpforms-lite' ),
[517] Fix | Delete
'[WPForms\Emails\Mailer]'
[518] Fix | Delete
);
[519] Fix | Delete
}
[520] Fix | Delete
[521] Fix | Delete
return $errors;
[522] Fix | Delete
}
[523] Fix | Delete
[524] Fix | Delete
/**
[525] Fix | Delete
* Log given email errors.
[526] Fix | Delete
*
[527] Fix | Delete
* @since 1.5.4
[528] Fix | Delete
*
[529] Fix | Delete
* @param array $errors Errors to log.
[530] Fix | Delete
*/
[531] Fix | Delete
protected function log_errors( $errors ): void {
[532] Fix | Delete
[533] Fix | Delete
if ( empty( $errors ) || ! is_array( $errors ) ) {
[534] Fix | Delete
return;
[535] Fix | Delete
}
[536] Fix | Delete
[537] Fix | Delete
foreach ( $errors as $error ) {
[538] Fix | Delete
wpforms_log(
[539] Fix | Delete
$error,
[540] Fix | Delete
[
[541] Fix | Delete
'to_email' => $this->to_email,
[542] Fix | Delete
'subject' => $this->subject,
[543] Fix | Delete
'message' => wp_trim_words( $this->get_message() ),
[544] Fix | Delete
],
[545] Fix | Delete
[
[546] Fix | Delete
'type' => 'error',
[547] Fix | Delete
]
[548] Fix | Delete
);
[549] Fix | Delete
}
[550] Fix | Delete
}
[551] Fix | Delete
[552] Fix | Delete
/**
[553] Fix | Delete
* Send the email.
[554] Fix | Delete
*
[555] Fix | Delete
* @since 1.5.4
[556] Fix | Delete
*
[557] Fix | Delete
* @return bool
[558] Fix | Delete
*/
[559] Fix | Delete
public function send() {
[560] Fix | Delete
[561] Fix | Delete
if ( ! did_action( 'init' ) && ! did_action( 'admin_init' ) ) {
[562] Fix | Delete
_doing_it_wrong( __FUNCTION__, esc_html__( 'You cannot send emails with WPForms\Emails\Mailer until init/admin_init has been reached.', 'wpforms-lite' ), null );
[563] Fix | Delete
[564] Fix | Delete
return false;
[565] Fix | Delete
}
[566] Fix | Delete
[567] Fix | Delete
// Don't send anything if emails have been disabled.
[568] Fix | Delete
if ( $this->is_email_disabled() ) {
[569] Fix | Delete
return false;
[570] Fix | Delete
}
[571] Fix | Delete
[572] Fix | Delete
$errors = $this->get_errors();
[573] Fix | Delete
[574] Fix | Delete
if ( $errors ) {
[575] Fix | Delete
$this->log_errors( $errors );
[576] Fix | Delete
[577] Fix | Delete
return false;
[578] Fix | Delete
}
[579] Fix | Delete
[580] Fix | Delete
$this->send_before();
[581] Fix | Delete
[582] Fix | Delete
$sent = wp_mail(
[583] Fix | Delete
$this->to_email,
[584] Fix | Delete
$this->get_subject(),
[585] Fix | Delete
$this->get_message(),
[586] Fix | Delete
$this->get_headers(),
[587] Fix | Delete
$this->get_attachments()
[588] Fix | Delete
);
[589] Fix | Delete
[590] Fix | Delete
$this->send_after();
[591] Fix | Delete
[592] Fix | Delete
return $sent;
[593] Fix | Delete
}
[594] Fix | Delete
[595] Fix | Delete
/**
[596] Fix | Delete
* Add filters / actions before the email is sent.
[597] Fix | Delete
*
[598] Fix | Delete
* @since 1.5.4
[599] Fix | Delete
*/
[600] Fix | Delete
public function send_before(): void { // phpcs:ignore WPForms.PHP.HooksMethod.InvalidPlaceForAddingHooks
[601] Fix | Delete
[602] Fix | Delete
// phpcs:ignore WPForms.Comments.PHPDocHooks.RequiredHookDocumentation
[603] Fix | Delete
do_action( 'wpforms_emails_mailer_send_before', $this );
[604] Fix | Delete
[605] Fix | Delete
add_filter( 'wp_mail_from', [ $this, 'get_from_address' ] );
[606] Fix | Delete
add_filter( 'wp_mail_from_name', [ $this, 'get_from_name' ] );
[607] Fix | Delete
add_filter( 'wp_mail_content_type', [ $this, 'get_content_type' ] );
[608] Fix | Delete
}
[609] Fix | Delete
[610] Fix | Delete
/**
[611] Fix | Delete
* Remove filters / actions after the email is sent.
[612] Fix | Delete
*
[613] Fix | Delete
* @since 1.5.4
[614] Fix | Delete
*/
[615] Fix | Delete
public function send_after(): void { // phpcs:ignore WPForms.PHP.HooksMethod.InvalidPlaceForAddingHooks
[616] Fix | Delete
[617] Fix | Delete
// phpcs:ignore WPForms.Comments.PHPDocHooks.RequiredHookDocumentation
[618] Fix | Delete
do_action( 'wpforms_emails_mailer_send_after', $this );
[619] Fix | Delete
[620] Fix | Delete
remove_filter( 'wp_mail_from', [ $this, 'get_from_address' ] );
[621] Fix | Delete
remove_filter( 'wp_mail_from_name', [ $this, 'get_from_name' ] );
[622] Fix | Delete
remove_filter( 'wp_mail_content_type', [ $this, 'get_content_type' ] );
[623] Fix | Delete
}
[624] Fix | Delete
}
[625] Fix | Delete
[626] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function