Saya menggunakan Wordpress 3.1.3 sebagai CMS lengkap, diinstal di direktori root domain. Saya memilikinya setup menggunakan opsi bawaan untuk memiliki halaman statis sebagai halaman rumah, dan kemudian blog saya di http://www.example.com/blog
.
Yang saya inginkan adalah memiliki posting blog tunggal, halaman kategori, halaman arsip, dan halaman tag, dan halaman lain yang berhubungan dengan blog memiliki "awalan" dari / blog / dalam struktur tautannya. Jadi URL posting akan menjadiwww.example.com/blog/post-title
Saat ini, saya hanya memiliki halaman kategori berfungsi dengan benar. Ini dicapai dengan menambahkan baris berikut ke .htacces
file saya :
RewriteRule ^category/(.+)$ http://www.example.com/$1 [R=301,L]
Kemudian, saya mengatur Pangkalan Kategori ke "blog" pada halaman Pengaturan Permalinks di Wordpress. Ini memberikan halaman kategori URL: www.example.com/blog/category-name
(tanpa menghapus awalan kategori .htaccess
, mereka memiliki URLcategory/blog/category-name
).
Dalam upaya agar ini berfungsi untuk hal-hal lain yang saya inginkan berfungsi, saya menetapkan Tag Base saya ke "blog." Saya juga membuat Struktur Permalink Kustom saya: /blog/%postname%
(seperti yang disarankan oleh beberapa utas yang saya temukan sedang mencari di Google).
Pengaturan ini memberikan URL untuk posting blog tunggal, tag halaman, dan arsip halaman struktur URL yang saya cari. Namun, itu membuat semuanya menyebabkan 404 kesalahan.
Saya menghapus .htaccess
file saya untuk memastikan Wordpress menulis untuk itu, dan itu. Jika saya menghapus /blog/
dari struktur permalink, semuanya berfungsi dengan benar, tetapi saya tidak lagi memiliki struktur URL yang saya cari.
Saya bingung apa yang harus saya lakukan. Saya terus membaca utas dan panduan yang mengatakan ini sesederhana menambahkan /blog/
struktur permalink, tetapi sejauh ini belum semudah itu.
Saya akan sangat berterima kasih jika ada yang tahu bagaimana saya bisa membuatnya bekerja.
.htaccess
isi:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>