«wp custom api» относится к реализации пользовательского API (интерфейса прикладного программирования) в WordPress. Он позволяет вам создавать свои собственные конечные точки для получения или управления данными на веб-сайте WordPress. Вот несколько методов, которые вы можете использовать для реализации собственного API в WordPress:
- Пользовательская конечная точка с Functions.php:
Вы можете определить собственные конечные точки API, добавив код в файлfunctions.php
вашей темы. Вот пример:
function custom_api_endpoint() {
register_rest_route( 'myplugin/v1', '/data/', array(
'methods' => 'GET',
'callback' => 'custom_api_callback',
) );
}
function custom_api_callback() {
$data = array(
'message' => 'Hello from custom API!',
);
return rest_ensure_response( $data );
}
add_action( 'rest_api_init', 'custom_api_endpoint' );
В этом примере регистрируется пользовательская конечная точка /myplugin/v1/data/
, и при доступе к ней через запрос GET выполняется функция custom_api_callback
, возвращающая простое сообщение.
- Пользовательская конечная точка с плагином.
Другой способ создать собственный API — разработать плагин. Вот пример использования API плагинов WordPress:
/*
Plugin Name: My Custom API
*/
function custom_api_callback() {
$data = array(
'message' => 'Hello from custom API!',
);
return rest_ensure_response( $data );
}
function custom_api_endpoint() {
register_rest_route( 'myplugin/v1', '/data/', array(
'methods' => 'GET',
'callback' => 'custom_api_callback',
) );
}
add_action( 'rest_api_init', 'custom_api_endpoint' );
Создав плагин с приведенным выше кодом, вы сможете активировать его в своей установке WordPress, и пользовательская конечная точка /myplugin/v1/data/
станет доступной.
- Использование пользовательской библиотеки API:
Если вы предпочитаете более структурированный подход, вы можете использовать собственную библиотеку API, например WP REST API или плагин WP API Menus. Эти библиотеки предоставляют дополнительные функции и упрощают создание пользовательских конечных точек API и управление ими в WordPress.