2017-05-26 11 views
12

Próbuję uruchomić niestandardową wtyczkę na wp 4.7.4. Poniżej jest mój prosty pluginZdarzenie rest_api_init nie zostało uruchomione

add_action('rest_api_init', 'register_routes'); 


function register_routes() { 
    register_rest_route('taxonomy-manager/v1', '/taxonomies/(P<taxonomy_type>[a-zA-Z]+)', array(
    'methods' => 'GET', 
    'callback' => 'get_or_insert' 
)); 
} 

function get_or_insert(WP_REST_Request $request) { 

    $parameters = $request->get_params(); 

    return $parameters; 

} 

Kiedy żądać wp-json końcowym widzę tam żadnej trasy wtyczki. Wtyczka została pomyślnie aktywowana. Czy coś przeoczyłem? Czy powyższa wtyczka (lub podobna na podstawie zdarzenia rest_api_init) działa dla kogokolwiek innego? Dzięki.

+0

Czy masz włączony ładne permalinks? –

+0

@TyBailey, w ustawieniach permalinków Mam strukturę "Dzień i nazwa". –

+0

Czy możesz wypróbować stronę statyczną i sprawdzić, czy to działa? Wykluczyć coś, co dzieje się z .htaccess lub inną regułą routingu gdzieś indziej w kodzie. Nie zapominaj też, że istnieje także precedens. Może chcieć dodać czwarty parametr jako prawdziwy. – Shawn

Odpowiedz

0

Używanie najnowszej kompilacji Nie widzę akcji rest_api_init. Wygląda jak ten kod w plugin.php jest zawsze pusty i wraca, nie pozwalając na działanie rest_api_init do opalania:

if (empty($GLOBALS['wp']->query_vars['rest_route'])) { 
    return; 
} 
+0

Tak więc ta sprawa została rozwiązana za pomocą całkiem permalinks https://github.com/WP-API/WP-API/issues/1475 –

2

Patrz poniżej listy kontrolnej,
1. Zmień swój odnośnik w postaci ładnej niego i sprawdzić.
2. Sprawdź swój plik .htacess (powinien być zapisywalny, gdy zapiszesz strukturę permalinka, którą można ponownie zapisać przy pomocy wp).
3. Sprawdź Auth. 4. Sprawdź poniżej metody tworzenia niestandardowych końcowego,

add_action('rest_api_init', function() { 
    register_rest_route('myplugin/v1', '/author/(?P<id>\d+)', array(
    'methods' => 'GET', 
    'callback' => 'my_awesome_func', 
)); 
}); 

REF: https://developer.wordpress.org/rest-api/extending-the-rest-api/adding-custom-endpoints/

Powiązane problemy