Gombidi Bilişim Posted September 9, 2014 Share Posted September 9, 2014 Merhaba arkadaşlar; Aslında sorunum sadece prestashop ile ilgili değil. Genel olarak mod_rewrite bilgi eksikliğimden kaynaklanıyor. Merak ettiğim konu şu : Eski sitemizi tamamen prestashop a taşıyoruz. Ürün, üye, kategori, yorum, vs... aktarmada sorunlarla karşılaşsam da bunları çözmeyi başardım. Fakat şu anki sorunumuz tamamen seo kaybını engellemek amacı ile çıktığımız yolda ortaya çıktı. Eski sitemizdeki ürünlerden link örneği : http://www..........com/satilacak-urun-adresi,PR-9.html Prestashop a aktarım yaptığımdaki ürün adresi : http://www..........com/satilacak-urun-adresi-PR-9.html Burada aslında ürünler rewrite larını "satilacak-urun-adresi" şeklinde ayarladım. "PR-9" kısmındaki rakam ürünün ID numarası. ID numaralarını da sisteme aynen aktardığım için, SEO ve URL bölümünde "ürünlere yönlendir" alanını "{rewrite}-PR-{id}.html" şeklinde düzenledim. Nedense bu alana "," virgül değeri giremediğim için aynı link yapısına ulaşamıyorum. Elde etmek istediğim "{rewrite}-,PR-{id}.html" . Bu konuda .htaccess dosyasında düzenleme yapmaya kalktım fakat başarılı olamadım. Bu konuda bana yardım edebilir misiniz? Link to comment Share on other sites More sharing options...
Şahin YILDIZ Posted September 10, 2014 Share Posted September 10, 2014 (edited) Prestashopta bu mümkün değil....iyi derecede kaynak kodları ile oynamak gerekir... Biraz zahmetli bir iş fakat .htaccess yönlendirme yapmaktan başka bir çareniz görünmüyor.... Edited September 10, 2014 by Şahin YILDIZ (see edit history) Link to comment Share on other sites More sharing options...
Gombidi Bilişim Posted September 11, 2014 Author Share Posted September 11, 2014 Aslında Prestashop link çakışmasını engellemek için böyle bir önlem almış, gayet güzel. Kaldırmanın mümkün olduğunu farkettim fakat daha sonra oluşabilecek sorunları göz önünde bulundurduğumda mantıklı görmedim. Zaten prestashop ta işlerini .htaccess i yazarak yapıyor. Bu şekilde kendi sorunuma bir çözüm buldum. Aynı sorunu yaşayacak diğer arkadaşlarımız için işlerine yarayabileceğini düşündüğüm çözümümü sunuyorum. .htaccess içerisine : RewriteRule ^(.*),PR-(.*)$ /$1-$2 [L,R=301] bu satır hakkında fazla açıklama yapmaya gerek yok sanırım. Ha birde "ben .html ide silmek istiyorum" diyen olursa : RewriteRule ^(.*).html(.*)$ /$1$2 [L,R=301] Bu iki satırı .htaccess eklerseniz sorununuz çözülecektir. Tabiki bu satırları kendinize göre uyarlamanız gerekecek. Eğer friendly url özelliğiniz açıksa; panelde ilk seo&url sekmesinde güncelleme yaptığınızda, yada yeni bir yazma kuralını panelden yönettiğinizde .htaccess dosyanız değişecektir. Sebebi ise .htaccess in classes/Tools.php tarafından en baştan yazılması. classes/Tools.php içerisine (tavsiyem bu satırın hemen altına) fwrite($write_fd, "RewriteEngine on\n"); fwrite($write_fd, "RewriteRule ^(.*),PR-(.*)$ /$1-$2 [L,R=301]\n"); Bu satırı eklemeniz (yada yazacağınız kural her ne ise ) eklemeniz yeterli olacaktır. İlginize çok teşekkür ederim. Tüm forum ekibine iyi çalışmalar. 2 Link to comment Share on other sites More sharing options...
Şahin YILDIZ Posted September 11, 2014 Share Posted September 11, 2014 Elinize sağlık...süper bir paylaşım diyebilirim.... prestashop forumda bu konuya ihtiyaç vardı... ihtiyaçı olanlar için bulunmaz bir doküman oldu.... Link to comment Share on other sites More sharing options...
Gombidi Bilişim Posted September 11, 2014 Author Share Posted September 11, 2014 Rica ederim, biraz yardımım dokunduysa ne mutlu. İyi çalışmalar. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now