-
作者帖子
-
想要把 wordpress 當成後台來進行使用,但是在進行調用子站點的數據時,一直失敗,如何解決?
比如我的主站點是 https://smartbpm.cn/,我的子站點是 https://smartbpm.cn/newnew
我訪問 https://smartbpm.cn/wp-json 主站點數據可以獲取成功
但是想要獲取子站點 https://smartbpm.cn/newnew 的數據 wp-json 獲取不成功
https://smartbpm.cn/newnew/wp-json
這個要如何進行處理?
還有就是 wp-json 是在 wordpress 那個文件進行調用的?
讀了兩遍還是沒看懂你是要弄啥樣兒的,WordPress 多站點要調用子站數據的話,得先考慮你要調用的是啥類型的數據,文章、頁面、圖片、標籤、自定義字段,一些列的東西, 簡單一句話,你要調用啥得自己根據 WP-REST-API 來開發調用。
https://smartbpm.cn/newnew/wp-json 這個如果你的目的是為了獲取子站的 wp-json 訪問地址是 404 ,也就是説,你還得改偽靜態規則。
原因在
smartbpm.cn/newnew/wp-json
是目錄指向,服務器上不存在newnew
這個目錄,也就是 404 。是的,想要獲取整個子站的裏面的全部 wp-json 數據就是,,比如下面的是主站下面的數據,,偽靜態如何修改?
目前的偽靜態用的是這個,
rewrite ^.*/files/(.*)$ /wp-includes/ms-files.php?file=$1 last; if (!-e $request_filename){ rewrite ^.+?(/wp-.*) $1 last; rewrite ^.+?(/.*\.php)$ $1 last; rewrite ^ /index.php last; }
修改成能夠識別到 newnew 這個目錄的
找了下有三個方式你自己測試下:
1 、到後台的固定連接改成年月日的形式或者其他,然後保存,訪問測試:
2 、在根鏈接後添加 index.php
https://localhost/wordpress/index.php/wp-json/wp/v2/posts
3 、 WordPress 如果是 Apache 環境是採用 .htaccess 處理重定向,但是在 Nginx 的情況下,Nginx 不使用.htaccess ,我們服務器用的是 nginx 但沒有遇到你上面的問題,不瞭解你的服務器配置細節,所以不清楚具體原因。
我用的是百度雲的虛擬主機 nginx,
bcloud_nginx_user.conf 配置就是下面這個
rewrite ^.*/files/(.*)$ /wp-includes/ms-files.php?file=$1 last; if (!-e $request_filename){ rewrite ^.+?(/wp-.*) $1 last; rewrite ^.+?(/.*\.php)$ $1 last; rewrite ^ /index.php last; }
上面的給你的方法先測試了再説,
.conf 配置文件不止這麼點兒東西,需要配置 Nginx 的站點服務器文件,具體的寫法並不清楚,我們站子域名的形式訪問正常:
bbs.weixiaoduo.com/wp-json/wp/v2/posts
doc.weixiaoduo.com/wp-json/wp/v2/posts
上面的方法也用了,還是不可以,我用的是子目錄方式,你們子域名可以,是如何修改的偽靜態?我嘗試改成子域名方式看看。
論壇搜索 偽靜態 找找,不一定全都適用。
你好。。經過幾天的修改。。調取子目錄數據的問題。。已經解決了。是因為偽靜態的問題。。不同的服務器配置。。寫法確實有些不同
子域名也是一樣
-
作者帖子
- 哎呀,回覆話題必需登錄。