Blog yazıları, etiket sayfaları vb. İçin kalıcı bağlantı yapısına ön ek olarak / blog / öğesini nasıl eklerim?


19

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 .htaccessURL'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.

.htaccessWordpress'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>

Yan not olarak, bir yayını düzenlerken gösterilen kalıcı bağlantı "yanlış". Son bağlantıyı göstermez.
Alexis Wilke

Yanıtlar:


5

Ayarlar> Kalıcı Bağlantılar'a gidin ve kalıcı bağlantı yapılarına ekleyin


1
Bu denediğim ilk şeylerden biriydi ve 404 hatalarına neden oldu. Bu yüzden birkaç saat devre dışı bıraktım ve yanıtınızı okuduktan sonra tekrar denemeye karar verdim. Şimdi tek yazı sayfalarım için çalışıyor. Kategori sayfalarının tekrar çalışmasını sağladım. Bu, etiket sayfalarını ve içinde / blog / gereken arşiv sayfalarını bırakır.
Preston

Sayfaya bakarsanız, etiketler için de bir yer vardır. Arşiv sayfaları gelince yaklaşık sayfayı konuştuğunu gösterir vb makaleleri, etiketleri, kategoriler listesi veya arşivlenmiş mesajlar
xLRDxREVENGEx

Etiketleri ile, Etiket Tabanı alanına blog eklersem, bana doğru etki alanı yapısını verir "etkialanim.com/blog/tag-name" ama bu sayfa bana bir 404 hatası veriyor. Arşivlerle, belirli bir ay için arşivlenen yayınları gösteren sayfadır. URL'nin alanim.com/blog/2011/05 olmasını istiyorum. Bu URL yapısı bir arşiv bağlantısını tıkladığımda ortaya çıkıyor, ancak 404 hatası veriyor. Ve şimdi tekrar tek blog yazıları için 404 hataları alıyorum. Bu sorun yaratan bir eklenti olabilir mi?
Preston

.Htaccess kurulumunuz doğru mu?
xLRDxREVENGEx

İnanıyorum ki, Wordpress bunları her değiştirdiğimde yeniden yazma kurallarını ekliyor. Orada böyle bir şey için özel bir şey olmalı mı?
Preston

27

Özel kalıcı bağlantı yapısına "/ blog /" eklediğinizde ve ayrıca kategori tabanına "/ blog /" eklediğinizde 404 hatası alıyorsunuz. Sadece bir özel kalıcı bağlantı yapısına eklenmelidir.

Kategori tabanınızı ve etiket tabanınızı boş bırakırsanız ve özel kalıcı bağlantı yapısının önüne "/ blog /% postname%" gibi görünmesi için "/ blog /" ifadesini eklerseniz - bu istenen sonucu alır.

Sayfalarınız şu şekilde görünecektir: domain.com/pagename/ Posta URL'niz şöyle görünecektir: domain.com/blog/postname Kategori URL'niz şöyle görünecektir - domain.com/blog/category/postname

Umarım bu faydalıdır ...


1
Sadece bir bölüme eklemek için iyi bir yakalama. Bu çözüm ayrıca kategoriye / blog / ekleyecek ve sayfaları arşivleyecektir. Bu gerçekten kabul edilen cevap olmalı.
Ian

Bu yöntemin kategoriler sayfasının URL'si için de geçerli olduğuna sevindim.
Edwin Yip

1
Bu, bu sorunun kabul edilen cevabı olmalıdır.
AndyWarren

2
öneki TÜM özel yazı türlerinize
ekleyecektir

1
Burada olağan bir soru muhtemelen şöyle olacaktır: Bunu sadece "yazı" yayın türleri için nasıl yönetiyorsunuz ve örneğin farklı diller için nasıl çeviri / blog yazıyorsunuz? :)
trainoasis
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.