【发布时间】:2012-01-25 12:20:53
【问题描述】:
所以我在粉丝页面上有一个iFrame 应用程序,其中包括 cmets 插件。每次有人添加评论时,我/任何管理员是否可以收到通知或电子邮件?
【问题讨论】:
标签: facebook iframe facebook-social-plugins comments
所以我在粉丝页面上有一个iFrame 应用程序,其中包括 cmets 插件。每次有人添加评论时,我/任何管理员是否可以收到通知或电子邮件?
【问题讨论】:
标签: facebook iframe facebook-social-plugins comments
创建评论后,您可以通过subscribe 到comment.create 事件并以您喜欢的任何方式将通知发送给管理员。 Facebook 本身不提供此类功能。
这可能看起来像这样(我假设在执行此操作之前已经在页面上加载了 Facebook JavaScript SDK,请在加载时在 documentation 中阅读它,无论如何,如果您使用的是社交评论插件,它应该已经加载):
<script type="text/javascript">
FB.subscribe('comment.create', function(response){
// Here you need to do a call to some service/script/application
// to notify your administrator about new comment.
// I'll use jQuery ajax to call server-side script to illustrate the flow
$.post('//hostnamne/path/to/script', {
"action": "comment created",
"url_of_page_comment_leaved_on": response.href,
"id_of_comment_object": response.commentID
});
});
</script>
在位于http(s?)://hostnamne/path/to/script 的脚本中,您可以向管理员发送通知,具体操作方式可能因您的需要而异,例如,如果您想发送电子邮件,您可以使用类似这个 php 示例(老化这个只是一个流程示例,而不是您应该使用的真实代码):
<?
$admin_email = 'root@localhost';
$commentID = $_REQUEST['id_of_comment_object'];
$page_href = $_REQUEST['url_of_page_comment_leaved_on'];
$message = "comment #{$commentID} was leaved on page {$page_href}";
mail($admin_email, "You have a new comment", $message);
?>
如果您也需要跟踪 cmets 的删除,您可以使用具有类似流程的 comment.remove 事件...
【讨论】:
'You have a new comment" 并用双引号关闭它;事实上,这不是什么大问题,因为正如您所说,代码只是一个流程示例。