Wordpress 3.1.3 bir etki alanının kök dizininde yüklü bir tam CMS olarak kullanıyorum. Ana sayfa olarak statik bir sayfa ve sonra benim blog at var yerleşik seçenekleri kullanarak kurulum var http://www.example.com/blog
.
İstediğim tek blog yayınlarım, kategori sayfalarım, arşiv sayfaları ve etiket sayfalarım ve blog ile ilgili diğer sayfaların bağlantı yapısında / blog / "öneki" var. Yani bir yazı URL'siwww.example.com/blog/post-title
Şu anda, sadece kategori sayfalarının düzgün çalışmasını sağlıyorum. Bu, dosyama aşağıdaki satırı ekleyerek gerçekleştirildi .htacces
:
RewriteRule ^category/(.+)$ http://www.example.com/$1 [R=301,L]
Ardından, Wordpress'teki Kalıcı Bağlantı Ayarları sayfasında Kategori Tabanı'nı "blog" olarak ayarladım. Bu, kategori sayfalarına URL'sini verir: www.example.com/blog/category-name
(kategori önekini kaldırmadan .htaccess
URL'ye sahipti category/blog/category-name
).
Bunun çalışmasını istediğim diğer şeyler için çalışmasını sağlamak amacıyla, Etiket Tabanımı "blog" olarak ayarladım. Özel Permalink Yapımı da yaptım: /blog/%postname%
(Google'da arama yaptığımı bulduğum birkaç ileti dizisinin önerdiği gibi).
Bu ayarlar, aradığım URL yapısının tek blog yayınlarının, etiket sayfalarının ve arşiv sayfalarının URL'lerini verir. Ancak, bunların hepsi 404 hatalarına yol açar.
.htaccess
Wordpress'in yazdığından emin olmak için dosyamı sildim ve öyle. /blog/
Kalıcı bağlantı yapısını kaldırırsam , her şey düzgün çalışır, ancak artık aradığım URL yapısına sahip değilim.
Ne yapmam gerektiği konusunda kayboldum. Konuları ve kılavuzları okumaya devam ediyorum /blog/
, bunun kalıcı bağlantı yapısına eklemek kadar basit olduğunu söyleyebilirim, ancak şu ana kadar neredeyse bu kadar basit olmamıştı.
Herkes bu işe nasıl alabilirim bilir, çok minnettar olurum.
.htaccess
içeriği:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>