我正在创建一个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吗?
答案 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