TLDR:
Trong bản cài đặt không chuẩn, bạn có thể đặt các tệp WordPress của mình vào thư mục con của trang web gốc.
... và vẫn cho phép khách truy cập của bạn đến khách truy cập truy cập vào "trang web" WordPress của bạn từ URL tên miền (gốc) của trang web của bạn mà không cần thêm tên thư mục con:
(ví dụ: www.example.com
vs www.example.com/wordpress
):
WP function | wp_options. | WP constant | what it represents | WP Settings Label | Example
-------------------------------------------------------------------------------------------------------------------------------------
`site_url()` | `siteurl` | `WP_SITEURL` | WordPress files location | WordPress Address | https://www.example.com/wordpress
`home_url()` | `home` | `WP_HOME` | browser address bar | Site Address | https://www.example.com
Trong đó giá trị cho hằng số WP được ưu tiên hơn giá trị Cài đặt wp_options / WP.
Các cấu hình khác nhau cho WordPress
Trong các cài đặt WordPress tiêu chuẩn nhất , home_url
và site_url
sẽ có cùng giá trị.
Bất kể, họ đại diện cho hai điều khác nhau.
Trong một cài đặt không chuẩn , chúng có thể có các giá trị khác nhau.
LƯU Ý: Tôi sẽ bỏ giao thức trong câu trả lời của mình để dễ đọc hơn.
Trong bài đăng này, CHUẨN BỊ MỌI URL với :
https://
, http://
HOẶC //
(trừ khi tôi đã bao gồm nó).
( //
là relative
giao thức và sẽ hoạt động cho một trong hai http://
hoặc cả hai https://
)
Cài đặt tiêu chuẩn (bao gồm cả cài đặt "Một lần nhấp")
home_url
: là trang chủ của trang web (wordpress) của bạn, như được chỉ định trong thanh địa chỉ của người dùng.
site_url
: là thư mục chứa tập tin wordpress của bạn.
Cài đặt trong 5 phút của WordPress sẽ cài đặt các tệp wordpress, hai giá trị này sẽ giống nhau - các tệp wordpress sẽ được cài đặt trong cùng một thư mục mà bạn muốn mọi người sử dụng để giải quyết trang web của bạn hoặc phần wordpress (blog) trên trang web của máy chủ của bạn.
Ví dụ 1:
người dùng truy cập blog của bạn tại : www.example.com
,
các tệp wordpress được cài đặt tại : www.example.com
, hoặc thư mục gốc của trang web máy chủ của bạn.
home_url
=== site_url
==="www.example.com"
Ví dụ 2:
người dùng truy cập blog của bạn tại : www.example.com/blog
,
các tệp wordpress được cài đặt tại : www.example.com/blog
, hoặc trong blog
thư mục bên trong thư mục gốc của trang web của bạn.
home_url
=== site_url
==="www.example.com/blog"
Trong trường hợp www.example.com
này là trang web chính và www.example.com/blog
là gốc của blog của bạn.
Ở đây blog của bạn được tách ra và hoạt động như một tập hợp con của trang web chính của bạn.
Trong trường hợp này, trang web chính của bạn không được kiểm soát, xác định hoặc tạo kiểu bởi WordPress.
Chỉ cần blog của bạn là. Tất cả các url trong blog của bạn sẽ được tiến hành bởiwww.example.com/blog
Lưu ý: Trong tài liệu, "trang web / trang web Wordpress" (trái ngược với "trang web / trang web" đơn giản) đề cập đến thư mục nơi các tệp WordPress của bạn được cài đặt. Trong trường hợp này, nó là www.example.com/blog
- mọi thứ trong blog
thư mục. "Trang web WordPress", trong kịch bản này, không giống với tên miền, gốc hoặc trang web chính của bạn. Nó là một tập hợp con của trang web tổng thể của bạn. Kiểu như một trang web bên trong một trang web. Tôi đề cập đến điều này vì thuật ngữ có thể không rõ ràng hoặc khó hiểu, với thiết lập cụ thể này.
Cấu hình cài đặt WordPress thay thế
Cung cấp cho WordPress Thư mục riêng của nó , phần Method II (With URL change)
.
Ví dụ, nhiều người không muốn làm tắc nghẽn thư mục gốc của trang web của họ với tất cả các tệp wordpress.
Họ muốn cài đặt wordpress trong thư mục con, * nhưng có "blog" hoặc "trang web WordPress" được truy cập như thể các tệp được cài đặt trong thư mục gốc của máy chủ cho trang web.
Điều này đặc biệt đúng khi WordPress được sử dụng để xây dựng và chạy toàn bộ trang web thậm chí không có "blog".
Ví dụ 3:
người dùng truy cập vào "blog" của bạn tại : www.example.com
,
các tệp wordpress được cài đặt tại : www.example.com/wordpress
, hoặc thư mục gốc của trang web máy chủ của bạn.
home_url
=== "www.example.com"
site_url
==="www.example.com/wordpress"
(Lưu ý: cấu hình này sẽ không hoạt động "ngoài luồng" chỉ bằng cách thay đổi giá trị của các biến này. Nó yêu cầu thay đổi cấu hình bổ sung để hoạt động chính xác)
Xem Cung cấp cho WordPress Thư mục riêng của nó , phần có tiêu đề Method II (With URL change)
để làm điều này.
Trong này trường hợp home_url
và site_url
nên giữ giá trị khác nhau.
Trong thiết lập này, bạn muốn trang web của bạn hoạt động chính xác như thể các tệp WordPress được cài đặt trong thư mục gốc của máy chủ cho trang web của bạn ...
NHƯNG, với mục đích tổ chức trên máy chủ,
bạn thực sự có các tệp WordPress của mình trong một thư mục được gọi wordpress
trong máy chủ thư mục gốc cho trang web của bạn.
Vì vậy, người dùng sẽ nhập vào www.example.com
để lấy trang chủ WordPress của bạn, thay vìwww.example.com/wordpress
Hàm wordpress <-> biến cơ sở dữ liệu <-> Hằng số Wordpress
Phần này giả sử cấu hình ví dụ 3 ở trên.
url thanh địa chỉ: www.example.com
tập tin wordpress: / thư mục wordpress
(Các trường hợp khác là tầm thường: Tất cả các biến / hàm giữ / trả về cùng một giá trị.)
Cách đặt giá trị cho
site_url
và
home_url
Trước tiên, hãy để tôi lưu ý rằng siteurl
và home
lưu trữ các giá trị được trả về bởi các hàm trên
1) Thông thường, bạn đặt các giá trị này trên bảng điều khiển phụ trợ / bảng điều khiển / quản trị viên
Settings -> General ->
siteurl
WordPress: Địa chỉ WordPress: https://www.example.com/wordpress
home
Địa chỉ trang web: https://www.example.com
(không bao gồm dấu gạch chéo ở đây - sẽ được cấu hình ở nơi khác)
2) Ngoài ra, bạn đặt các giá trị này trong cơ sở dữ liệu WordPress của mình:
wp_options
bảng ->
`options_name` | `options_value`
----------------------------------------------------
`siteurl` | `https://www.example.com/wordpress`
`home` | `https://www.example.com`
(không bao gồm dấu gạch chéo ở đây - sẽ được cấu hình ở nơi khác)
3) Chỉnh sửa wp-config.php
Xác định các hằng số cụ thể này để giữ các giá trị của bạn
Xác định WP_HOME
và WP_SITEURL
cài đặt bằng cách chèn các dòng này vào đầu wp-config.php
tệp của bạn :
define('WP_SITEURL','http://example.com/wordpress'); // wordpress core files
define('WP_HOME','http://example.com'); // address bar url
// ** MySQL settings - You can get this info from your web host ** //
...
(không bao gồm dấu gạch chéo ở đây - sẽ được cấu hình ở nơi khác)
Tham khảo: WP_SITEURL và WP_HOME
LƯU Ý: Điều này thật khó hiểu
(Tôi thực sự muốn WordPress đã gắn nhãn Cài đặt tương tự như tên php của họ,
chẳng hạn như Wordpress Site Address
và Home Page Address
một cái gì đó rõ ràng hơn như location of WordPress Site core files
và browser url to access WordPress home page
)
`WP_SITEURL` <--> `site_url()` <--> `siteurl` <--> Wordpress Address <--> /wordpress
`WP_HOME` <--> `home_url()` <--> `home` <--> Site Address <--> /
Bây giờ đây là nơi nó trở nên khó khăn!
NẾU bạn đã xác định các hằng số đó trongwp-config.php
tệpcủa mình,việc bạn có giá trị nào trong trang cơ sở dữ liệu / cài đặt của bạn không quan trọng .
Trên thực tế, bạn sẽ không thể sửa đổi giá trị này thông qua mặt sau (nó sẽ bị mờ đi). Bạn vẫn có thể sửa đổi bằng cách chỉnh sửa cơ sở dữ liệu của mình, nhưng làm như vậy sẽ không có hiệu lực trên trang web của bạn, trong khi các hằng số tồn tại trong tệp wp-config của bạn.
Tệp cấu hình của bạn sẽ không thay đổi các giá trị trong cơ sở dữ liệu của bạn (hoặc do đó bạn cài đặt trang). Thay vào đó, giá trị trang cơ sở dữ liệu / cài đặt của bạn sẽ bị bỏ qua . Các giá trị trong ghi đè wp-config hoặc được ưu tiên hơn cài đặt cơ sở dữ liệu của bạn.
Vì vậy, ... để kết thúc (TLDR):
WP function | wp_options. | WP constant | what it represents | WP Settings Label | Example
-------------------------------------------------------------------------------------------------------------------------------------
`site_url()` | `siteurl` | `WP_SITEURL` | WordPress files location | WordPress Address | https://www.example.com/wordpress
`home_url()` | `home` | `WP_HOME` | browser address bar | Site Address | https://www.example.com
Trong đó giá trị cho hằng số WP được ưu tiên hơn giá trị Cài đặt wp_options / WP.
Giá trị bản ghi wp_options và giá trị Cài đặt WP là như nhau.
Chỉnh sửa một, theo định nghĩa chỉnh sửa khác.
Nó chỉ là 2 cách khác nhau để truy cập cùng một biến.
Mặt khác, các hằng số WordPress là duy nhất và độc lập.
Trong nội bộ, các hằng số WordPress (PHP) ghi đè lên các đối tác db của chúng.
Nếu một hằng được định nghĩa trong wp-config, nó không thay đổi cơ sở dữ liệu.
Nhưng bên trong WordPress sẽ luôn thích / sử dụng giá trị của nó thay vì db.