簡體   English   中英

WordPress REST API 不適用於自定義 Z1870A829D9BC69ABF500ECA6F002 路徑

[英]WordPress REST API doesn't work on custom wordpress path

我正在開發我的第一個 wordpress 自定義主題並在自定義 Gutenberg 塊上工作。 到目前為止,它適用於我的設置。 但擔心用戶何時將其安裝在不同的路徑上。 我正在像這樣撥打 REST API 電話:

function( props ) {
    if (! props.attributes.categories ){
        wp.apiFetch( {
            url: '/wordpress/wp-json/wp/v2/categories'
        } ).then(categories => {
            props.setAttributes ({
                categories: categories
            })
        });
    }

我已經在自定義路徑(/wordpress)而不是主文件夾上使用 MAMP 在本地安裝了 wordpress。 所以http://localhost/wordpress/ My question is, the API URL url: '/wordpress/wp-json/wp/v2/categories' works because I've specified the exact path, adding /wordpress/ in front of the usual path, but how can I make it動態,以便它適用於用戶將 wordpress 站點安裝到的任何路徑?

只要 wordpress 安裝在索引文件夾上,只需url: '/wp-json/wp/v2/categories'對任何用戶都可以正常工作。 但是,如果用戶決定在自定義路徑下的 wordpress 站點上安裝我的主題和插件,例如theme.com/wordpress-subfolder/怎么辦?

在此先感謝大家!

使用 get_rest_url() 的值本地化您的腳本。

wp_register_script( 'my-script' , 'path/to/the-script.js' );
wp_localize_script( 'my_script' , 'wpRestApi' , array( 'url' => get_rest_url() ) );
wp_enqueue_script( 'my_script' );

在js中,可以通過wpRestApi.url訪問url

wpRestApi.url + 'wp/v2/categories'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM