首页 问答 正文

如何为wordpress主题创建自定义邮件模板?

注册会员 / 悠然自学 / 2023-06-11/ 浏览 39 次

为WordPress主题创建自定义邮件模板需要以下步骤:

  1. 创建邮件模板文件

在主题目录下创建一个新的文件夹,命名为“email-templates”。然后在文件夹下创建一个名为“custom-email-template.php”的PHP文件。这个文件将是自定义邮件模板的主体。

  1. 添加模板标记

在“custom-email-template.php”文件中,添加任何你需要的HTML、CSS和JavaScript及PHP标记。使用以下代码添加可变内容:

{$variable_name} 

这些变量稍后将由PHP脚本替换为实际内容。

  1. 创建邮件发送脚本

在主题目录下的functions.php文件中添加以下代码来创建邮件发送脚本:

function send_custom_email($to, $subject, $message, $headers = '') {
  add_filter('wp_mail_content_type', 'set_html_content_type');
  $sent = wp_mail($to, $subject, $message, $headers);
  remove_filter('wp_mail_content_type', 'set_html_content_type');
  return $sent;
}

function set_html_content_type() {
  return 'text/html';
} 

这个函数将发送邮件并设置邮件类型为HTML。你可以在代码中添加要使用的邮件模板的名称。

  1. 创建邮件数据

使用以下代码获取你想要添加到邮件中的数据:

// 获取文章标题
$title = get_the_title($post_id);

// 获取文章链接
$link = get_permalink($post_id);

// 获取作者名字
$author_name = get_the_author_meta('display_name', $author_id); 

你可以添加或删除任何你需要的数据。数据将被传递到邮件模板中的变量。

  1. 填充模板变量

使用以下代码将数据传递给邮件模板中的变量:

 // 为标题创建变量
 $email_template = str_replace('{$post_title}', $title, $email_template);

// 为链接创建变量
$email_template = str_replace('{$post_link}', $link, $email_template);

// 为作者名字创建变量
$email_template = str_replace('{$author_name}', $author_name, $email_template); 
  1. 发送邮件

最后,使用以下代码发送邮件:

// 发送邮件
  $sent = send_custom_email($to, $subject, $email_template, $headers);
  if ($sent) {
    // 发送成功
  } else {
    // 发送失败
  } 

这就是为WordPress主题创建自定义邮件模板的全部步骤。示例代码可以在这里查看。

大家谈论
    我的见解