【问题标题】:WooCommerce database user and payment checkWooCommerce 数据库用户和付款检查
【发布时间】:2017-11-17 05:31:12
【问题描述】:

我有一个小型网络应用程序,我想出售它的“访问权限”。该应用程序是使用 HTML5+CSS3+JavaScript 开发的,托管在我安装了 Wordpress 网页的同一台服务器上。

我该如何为已经为我的虚拟产品付费的用户授予对我的 web 应用程序的访问权限(访问权限/许可)。

我已经在 PHP 中进行了登录,有没有办法检查 WooCommerce 数据库并使用客户支付产品时使用的相同用户名和密码?还是有其他简单的方法?

我是 wordpress 和 woocommerce 的新手,所以请原谅我写英语的糟糕方式。

感谢阅读。

【问题讨论】:

  • 用户应该在他们的订单历史中拥有它,如果它是一个可下载的产品,他们应该能够登录并再次下载。
  • 它不可下载,但它是虚拟的。我想出售对该网站的访问权,我想知道表明用户已经为产品付款的“标志”存储在哪里?

标签: php database wordpress login woocommerce


【解决方案1】:

也许 insted 更好地寻找这个状态是使用 Woocommerce 提供的钩子和过滤器? 从我的经验来看,这是实现你想要的东西的捷径。 这是使用它的示例:LINK。 获取负责状态的钩子:已完成,然后向其添加操作。

Woocommerce Memberships - 允许您将产品与权限组合:如果用户购买将绑定到产品的产品,他将获得对 api 的访问权限。

希望对你有帮助。

编辑:

$sales = $wpdb->get_var( "SELECT ID FROM {$wpdb->posts} as posts
            WHERE   posts.post_type     = 'shop_order'
            AND     posts.post_status   IN ( '" . implode( "','", array( 'wc-completed', 'wc-processing', 'wc-on-hold' ) ) . "' )
        " );

它是对数据库的查询,它搜索所有标记为已完成并正在处理的订单。 MySQL查询以选择状态为:已完成的订单ID

SELECT ID FROM wp_posts WHERE wp_posts.post_type="shop_order" AND wp_posts.post_status="wc-completed";

编辑 2

还有其他信息存储在 wp_cmets 中。 wp_cmets 里面有四个重要的列:comment_post_ID、comment_content、comment_typeuser_id

comment_post_ID = 来自 wp_posts 的 ID

comment_content 包含有关交易的信息,应由您的程序识别。

【讨论】:

  • 谢谢。看起来很有趣,我会检查一下:)
  • 在我的情况下不起作用,因为我的 webapp 不是 Wordpress 页面,是我从头开始制作的“外部”webapp :(
猜你喜欢
  • 1970-01-01
  • 2019-09-30
  • 1970-01-01
  • 1970-01-01
  • 2017-05-31
  • 1970-01-01
  • 2019-03-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多