这是一个我正在尝试制作的个人使用插件。我想从站点a向我的博客提交一条评论(有点像发送trackback/pingback,但只是一条完整的评论)。
例如,在站点A上,我有一个带有名称、url和注释字段的表单。我在站点A中输入的数据,我想通过URL参数或POST方法提交到站点B(我的博客)。
我假设我的博客上需要一个操作挂钩来检索从站点A发送的数据,并将其插入wp注释表中。
这可能吗?
这是一个我正在尝试制作的个人使用插件。我想从站点a向我的博客提交一条评论(有点像发送trackback/pingback,但只是一条完整的评论)。
例如,在站点A上,我有一个带有名称、url和注释字段的表单。我在站点A中输入的数据,我想通过URL参数或POST方法提交到站点B(我的博客)。
我假设我的博客上需要一个操作挂钩来检索从站点A发送的数据,并将其插入wp注释表中。
这可能吗?
在WordPress中,几乎任何事情都是可能的。这完全取决于你有时想为此付出多大努力。:)
当然,评论帖子表单使用HTTP帖子提交到/wp-comments-post.php
所以你可以用它,除了NONCEs 如果要发布未过滤的HTML。您必须编写一个页面,为您提供一个可接受的NONCE,该NONCE站点a需要HTTP才能提交回评论帖子表单,但我认为,如果您不介意使用过滤器,它应该可以正常工作。
另一种选择是使用函数designed for AJAX 但让它从表单中捕获您的HTTP帖子,然后通过调用wp_insert_comment()
. 或者您可以在站点B上使用AJAX与站点A对话。当然,这样做会打开一个安全漏洞,但如果您的代码没有分发,您可以决定这是否会造成真正的问题。
(通常我会写一个例子,但今天没时间了。希望上面的内容能给你指明正确的方向。)
好的,我举一个例子。我希望它能起作用:)
Passing data from site A to site B (the blog):
在站点A上,我想我会使用POST方法,将数据发送到站点B。我不想在url中传递参数。在现场B,我会
$name = $_POST[\'name\'];
$email = $_POST[\'email\'];
$url = $_POST[\'url\'];
$content = $_POST[\'content\'];
$time = current_time(\'mysql\');
$data = array(
\'comment_author\' => $name,
\'comment_author_email\' => $email,
\'comment_author_url\' => $url,
\'comment_content\' => $content,
\'comment_date\' => $time,
\'comment_approved\' => 1,
);
wp_insert_comment($data);
这是我的索引。php文件,出于某种原因页脚。php未通过加载真的很奇怪,它在我的主题目录中,这可能是什么原因? <?php get_header(); ?> <?php get_sidebar(); ?> <div id=\"content\"> <?php query_posts(\'cat=-15\'); ?> <?php if (have_posts()) : ?> &