Tôi đang sử dụng Wordpress 3.1.3 dưới dạng CMS đầy đủ, được cài đặt trong thư mục gốc của tên miền. Tôi đã thiết lập nó bằng cách sử dụng các tùy chọn tích hợp để có một trang tĩnh làm trang chủ và sau đó là blog của tôi tại http://www.example.com/blog
.
Những gì tôi muốn là có các bài đăng blog, trang danh mục, trang lưu trữ và trang thẻ duy nhất của tôi và bất kỳ trang nào liên quan đến blog khác có "tiền tố" của / blog / trong cấu trúc liên kết của chúng. Vì vậy, một URL bài viết sẽ làwww.example.com/blog/post-title
Ngay bây giờ, tôi chỉ có các trang chuyên mục hoạt động chính xác. Điều này đã được thực hiện bằng cách thêm dòng sau vào .htacces
tệp của tôi :
RewriteRule ^category/(.+)$ http://www.example.com/$1 [R=301,L]
Sau đó, tôi đặt Cơ sở danh mục thành "blog" trên trang Cài đặt Permalinks trong Wordpress. Điều này cung cấp cho các trang danh mục URL của: www.example.com/blog/category-name
(không xóa tiền tố danh mục .htaccess
, chúng có URL category/blog/category-name
).
Trong nỗ lực để làm việc này cho những thứ khác mà tôi muốn nó hoạt động, tôi đã đặt Cơ sở thẻ của mình thành "blog". Tôi cũng đã thực hiện Cấu trúc Permalink tùy chỉnh của mình: /blog/%postname%
(như được đề xuất bởi một số chủ đề tôi đã tìm thấy trên Google).
Các cài đặt này cung cấp URL cho các bài đăng blog, trang thẻ và trang lưu trữ cấu trúc URL mà tôi đang tìm kiếm. Tuy nhiên, nó làm cho tất cả chúng dẫn đến lỗi 404.
Tôi đã xóa .htaccess
tệp của mình để đảm bảo Wordpress đã ghi vào nó và đúng như vậy. Nếu tôi xóa /blog/
cấu trúc permalink, mọi thứ sẽ hoạt động chính xác, nhưng tôi không còn có cấu trúc URL mà tôi đang tìm kiếm.
Tôi không biết mình nên làm gì. Tôi tiếp tục đọc các chủ đề và hướng dẫn nói rằng điều này đơn giản như việc thêm /blog/
vào cấu trúc permalink, nhưng cho đến nay nó gần như không đơn giản.
Tôi sẽ rất biết ơn nếu có ai biết làm thế nào tôi có thể làm việc này.
.htaccess
nội dung:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>