从Android应用程序添加用户到wordpress数据库

时间:2015-12-28 18:23:38

标签: android wordpress

我正在创建一个Android应用程序来连接到wordpress内置的网站。我试图找出如何通过应用程序本身将用户添加到wordpress数据库。

因此用户可以通过该应用注册。加上其他功能。

到目前为止,我已经尝试编写自己的PHP脚本,使用预定义的Wordpress函数,例如register_new_user()等。但这似乎不是最好的方法。

例如,在使用username_exists()时,在包含几个必需文件之后,我遇到了缺少某个全局变量的问题。

是否有任何插件或API能够满足我的需求?我已经看过这些资源,但他们没有达到目的。或者也许他们这样做,但我不知道如何使用它们。

https://developer.wordpress.com/docs/api/

https://wordpress.org/support/plugin/json-api

因此,如果有人熟悉如何设置,或者可以指出我正确的方向,那将非常有帮助。

感谢。

修改 运行这个php文件时得到的错误:

<?php

//database connection here, code now shown

if ( username_exists( $_GET['username'] ) )
           echo "Username In Use!";
       else
           echo "Username Not In Use!";
?>
  

致命错误:在null中调用成员函数get()   第123行/home2/extrovee/public_html/wp-includes/cache.php

cache.php第123行的错误来源是

function wp_cache_get( $key, $group = '', $force = false, &$found = null ) {
            global $wp_object_cache;

            return $wp_object_cache->get( $key, $group, $force, $found ); //<--line 123
    }

所以我需要在我的php文件中分配$ wp_object_cache吗?

3 个答案:

答案 0 :(得分:3)

https://developer.wordpress.com/docs/api/处提供的API是REST API。

首先,您将使用OAUTH2 https://developer.wordpress.com/docs/oauth2/来登录&#39;到网站。

然后你就可以打电话给&#39; REST API。

例如使用&#39; GET&#39;获取:www.YOURSITE.com/wordpess/rest/v1.1/me以获取有关您的用户帐户的元数据。

https://developer.wordpress.com/docs/api/1.1/get/me/

GET / POST / DELETE / UPDATE为HTTP methods

Retrofit这样的库可以帮助您连接到REST API(甚至使用OAUTH),但是您需要与REST API匹配的Java POJO。然后,您需要正确注释您的POJO。

或者你可以通过HTTP连接手动完成(不推荐,因为这可能很繁琐/容易出错)(虽然对于一个简单的例子,例如只添加用户到WP ...它可能工作正常)

编辑以回答以下评论:

显然你可以调用这个函数: https://codex.wordpress.org/Function_Reference/wp_insert_user

如果您想创建一个包含更多信息的用户,请使用以下命令: https://codex.wordpress.org/Function_Reference/wp_create_user

要使用上述两项内容,我猜测您必须使用“允许”的用户登录。创建新用户。

您可能(可能会)必须在WP目录中创建一个允许您执行此操作的公共PHP文件。

答案 1 :(得分:0)

在您的Android应用中,您可以直接将用户指向http:///wp-login.php?action =注册,以便用户注册新帐户。

答案 2 :(得分:0)

尽管看起来很明显,我唯一要做的就是添加以下行,以设置WordPress环境。

require_once('wp-load.php');

现在这不是推荐的做法,除非你为自己的网站(不像插件)构建一些东西,就像我的情况一样。

有关设置WP环境的更好方法,请阅读以下文章: http://glennmessersmith.com/pages/wpenviro.html