Projeler ve ajans desteği için müsait · Hızlı yanıt, işi yapan kişiden

PrestaShop'ta tema değişikliği sonrası CSS veya responsive görüntüleme hataları

Mobilde bozulan bir menü, tema değişikliğinden sonra «göz ardı edilmiş» görünen düzenlenmiş bir CSS: vakaların büyük çoğunluğunda dosya göz ardı edilmez, yalnızca önbelleğe alınmıştır. PrestaShop varsayılan olarak CSS ve JS dosyalarını birleştirir ve önbelleğe alır, bu önbellek temizlenmediği sürece eski sürümü sunmaya devam eder.

Sorunumu anlatayım Mesaj gönderin

En sık görülen ve en yanlış anlaşılan neden: CCC önbelleği

PrestaShop, Tercihler > Performans altında yapılandırılabilen, CSS ve JS dosyalarını birleştiren, sıkıştıran ve önbelleğe alan yerleşik bir özelliğe sahiptir. Yükleme hızını artırmak için birden fazla dosyayı tek bir dosyada birleştirir, ardından bu birleştirilmiş dosyayı önbellekte tutar. Bir CSS değişikliğinden sonra bu önbellek temizlenmezse, site birleştirilmiş eski sürümü göstermeye devam eder: CSS diskte gerçekten değiştirilmiş olsa bile «göz ardı edilmiş gibi görünür».

Bir diğer sık görülen neden: bir modül veya uygun bir override yerine doğrudan tema dosyalarına eklenmiş bir CSS dosyasıdır. Bu doğrudan değişiklik, bir sonraki tema güncellemesinde uyarı vermeden üzerine yazılır, bu da yeniden ortaya çıkmış bir hata izlenimi verir.

PrestaShop sürümleri arasında bir grid değişikliği

CSS grid yapısı, varsayılan teması Bootstrap 3 tabanlı olan PrestaShop 1.6 (col-xs-12, img-responsive, pull-right sınıfları) ile Classic teması Bootstrap 4 tabanlı olan PrestaShop 1.7/8 (col-12, img-fluid, float-right sınıfları) arasında büyük ölçüde değişir. İki sürümden biri için yazılmış bir eğitimden alınan bir CSS sınıfını diğerine uygulamak, genellikle özellikle mobilde sayfa düzenini bozar.

Yapılandırma mı, geliştirme mi?

CCC önbelleğini temizlemek ve doğru CSS dosyasını doğru yerde düzenlediğinizi kontrol etmek, çoğu durumu çözer. Doğrudan yapılmış bir tema değişikliğinin güncellemelerden etkilenmeyen temiz bir override'a düzgünce dönüştürülmesi veya yanlış Bootstrap sürümü için tasarlanmış bir grid'in düzeltilmesi gerektiğinde bu bir geliştirme konusu hâline gelir.

İlgili sayfalar

İhtiyacınızı bir dakikada anlatın

Size bir anket daha değil, doğrudan bir tahmin sunabilmem için birkaç hedefli soru.

version
besoin
etat
theme (facultatif)
Size dönebilmem için en az bir e-posta veya telefon numarası belirtin.

Size dönebilmem için en az bir e-posta veya telefon numarası belirtin.

Sıkça sorulan sorular

CSS'imi değiştirdim ama sitede hiçbir şey değişmiyor, neden?
Önce CCC önbelleğinin (Tercihler > Performans) etkin olup olmadığını kontrol edin. Etkinse, değişikliğin hemen etkili olmasını görmek için önbelleği temizlemeniz veya dosya birleştirmeyi geçici olarak devre dışı bırakmanız gerekir.
Değişikliğim bir tema güncellemesinden sonra neden kayboldu?
Muhtemelen güncelleme sırasında değiştirilen tema dosyalarına doğrudan yapıldığı için. Kalıcı bir değişiklik, tema dosyasının kendisi yerine bir modül veya özel bir override üzerinden yapılmalıdır.
İnternette bulduğum bir eğitim PrestaShop sürümümde çalışmıyor, neden?
Eğitimin hangi PrestaShop sürümünü hedeflediğini kontrol edin. Grid CSS sınıfları PrestaShop 1.6 (Bootstrap 3) ile 1.7/8 (Bootstrap 4) arasında farklıdır ve bunları karıştırmak sayfa düzenini bozar.
Ana menü yalnızca mobilde bozuluyor, bu önbellekle mi ilgili?
Olabilir, ancak genellikle temanın betiği ile sonradan eklenmiş bir eklenti arasındaki bir JavaScript çakışmasıdır da. İki neden farklı şekilde teşhis edilir, bu yüzden önce önbelleksiz test etmek faydalıdır.
Tema değişikliğinden sonra bir görüntüleme hatasını düzeltmek için bir geliştiriciye ihtiyaç var mı?
Her zaman değil: önbelleği temizlemek ve doğru dosyayı kontrol etmek genellikle yeterlidir. Doğrudan yapılmış bir tema değişikliğini düzgünce yeniden ele almak veya bir grid'i doğru Bootstrap sürümüne uyarlamak için geliştirme gereklidir.