将用户元字段与自定义后元字段匹配

时间:2018-01-21 20:35:23

标签: php wordpress function

我正在尝试创建一个与自定义帖子自定义字段具有相同专业知识的用户匹配的功能。因此,如果自定义作者元素具有“忍者”的专业知识。并且自定义帖子类型有一个自定义字段,该字段也包含“忍者”,我的电子邮件将发送给所有匹配用户的。

我有以下wp_mail代码,也可以使用get_users创建用户查询,但不能让我们按需要工作。有什么想法吗?

add_action('future_to_publish', 'send_emails_on_new_event');
add_action('new_to_publish', 'send_emails_on_new_event');
add_action('draft_to_publish', 'send_emails_on_new_event');
add_action('auto-draft_to_publish', 'send_emails_on_new_event');

function send_emails_on_new_event($post) {
  global $post;
  $expertise = get_field('expertise', $postid);
  $emails = MATCHING USER EMAIL ADDRESSES TO GO HERE;
  $message = '<p>Email content will go here ...</p>';
  if (get_post_type($post->ID) === 'custom_post_type') {
    wp_mail($emails, "Email title will go here ...", $message);
  }
}

1 个答案:

答案 0 :(得分:0)

您是否尝试过使用SQL查询来从数据库中获取匹配的电子邮件?

类似

$sql = SELECT user.email FROM user WHERE user.expertise = $postExpertise;
$email = database->getRecords($sql); //getRecords() is just general function placeholder, build your own db processor class
...
function send_emails_on_new_event($post) {
...
}

你必须明白,WP只是一个用PHP编写的具有通用功能的工具,如果你想要自定义功能,要么自己构建,要么运气好,找到已经用类似功能创建的插件。但是你不会总是找到你想要的插件。

因此,为什么WP仅适用于由不那么优秀的Web开发人员构建的低预算网站。因为如果你可以在WP之上构建自定义功能,那么你应该已经考虑过使用WP是否是首选的好主意