如何创建一个WordPress REST API?

WordPress REST API
WordPress REST API

WordPress REST API是比较丰富的,除了输出程序的API,还能自定义和创建API。下面讲讲在一个数据库中创建一个新表并且输出REST API。

创建MySQL表

创建一个user的表,通过phpMyAdmin,选中数据库,点击菜单的“SQL”,键入:

CREATE TABLE IF NOT EXISTS `user`(
   `id` INT UNSIGNED AUTO_INCREMENT,
   `phone` CHAR(11) NOT NULL DEFAULT '',
    `name` CHAR(255) NOT NULL DEFAULT '',
   PRIMARY KEY ( `id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

这样就创建了一个新的表,字段分别是id、phone、name。

注册一个REST API

在主题functions.php加入:

/**
 * Registers rewrite rules for the REST API.
 *
 * @link https://developer.wordpress.org/reference/functions/rest_api_init/
 */
function get_user() {
	global $wpdb;
	$results = $wpdb->get_results("SELECT * FROM user");
	if ( empty( $results ) ) {
		return null;
	}
  	return $results;
}
add_action( 'rest_api_init', function () {
	register_rest_route(
		'/user/v1', '/all',
		array(
			'methods' => 'GET',
			'callback' => 'get_user'
		)
	);
});

如何请求API?

创建好API后通过wp_remote_get()请求域名/wp-json/user/v1/all就可以得到一个标注的REST API输出user表的数据了。

推荐阅读:如何对WordPress REST API鉴权访问?

发表回复

您的电子邮箱地址不会被公开。