0

我正在尝试为支付网关创建一个 wordpress 插件。网关在给定的 URL 上发回数据(在我的例子中:mysite.com/payment-success)。在这个 URL 上,我有一个设置的 wordpress,一旦它检测到发布的变量以及更新该特定付款的数据库结果,就会发送电子邮件。

有人可以告诉我如何在 wordpress 中检索从外部 URL 发送的所有 POST 变量。

这就是我目前正在做的事情。

    add_shortcode('payment_success_wp', array($this, 'payment_success')); //second argument is array because function is in a class file.

我在 URL mysite.com/payment-success 的新页面上添加了上面的短代码。功能(简码)实现如下。.

function payment_success() {
    global $wpdb;
    $this->table_name = $wpdb->prefix . "my_payments";

    mail('myemailaddress@gmail.com', "about payments", "just chasing up" . print_r($_POST));

    if (isset($_POST['transactionstatus']) && isset($_POST['total'])) {

        $data = array(
            'payment_status' => $_POST['transactionstatus'],
        );

        $wpdb->update($this->table_name, $data, array('payment_id' => $_POST['oid']));
    }
}

当我手动调用上面的页面时,电子邮件确实会触发。我认为这真的很奇怪,但是当网关发送参数时,什么也没有发生。

任何帮助将不胜感激。

4

1 回答 1

0

用法

<?php add_shortcode( $tag , $func ); ?>

参数

$tag(string) (必需)要在帖子内容中搜索的简码标签 默认值:无

$func (callable) (required)找到短代码时运行的钩子 默认值:无

http://codex.wordpress.org/Function_Reference/add_shortcode

于 2013-10-27T13:52:50.940 回答