Panel galerii Fancybox pszestał działac

Ostatnia aktualizacja 10 miesiąc temu
Nina22Nina22Użytkownik
Opublikował(a) 10 miesiąc temu

Problem z panelem galerii Fancybox – PHP Fusion v9

Witam,
mam problem z panelem galerii Fancybox dla CMS PHP Fusion v9.
Zainstalowałam panel ze strony autora:[
https://phpfusion9.pl/artykul/11/pane...php-fusion Początkowo wszystko działało poprawnie, jednak po pewnym czasie panel przestał działać, mimo że nie wprowadzałam żadnych zmian bezpośrednio we wtyczce.
Jedyną modyfikacją, jaką wykonywałam, była edycja pliku layout.php, zgodnie z poradnikiem zamieszczonym na stronie: https://phpfusion9.pl/

Zmiany te miały na celu przyspieszenie ładowania strony.


Czy modyfikacja pliku layout.php mogła spowodować konflikt z panelem galerii?
Jeśli tak, na co powinnam zwrócić szczególną uwagę lub jak poprawnie połączyć te rozwiązania?

Z góry dziękuję za pomoc.

MirekMirekUżytkownik
Opublikował(a) 10 miesiąc temu

Fancybox – możliwy konflikt po modyfikacji layout.php (PHP-Fusion v9)


Tak — modyfikacja pliku layout.php mogła spowodować problemy z działaniem galerii Fancybox, nawet jeśli sam panel lub wtyczka nie były edytowane.
W PHP-Fusion v9 wiele dodatków działa poprawnie tylko wtedy, gdy skrypty JavaScript są ładowane w odpowiedniej kolejności.

1. Fancybox wymaga poprawnego ładowania jQuery

phpfusion9.pl/infusions/articles/images/fancy.webp
Fancybox korzysta z biblioteki jQuery, dlatego musi zostać uruchomiony dopiero po jej załadowaniu.
Jeżeli w pliku layout.php:
  1. [*]przeniesiono skrypty do stopki,
  2. [*]dodano kompresję lub optymalizację JS,
  3. [*]zmieniono kolejność ładowania plików,

to Fancybox może próbować uruchomić się zbyt wcześnie.

Jeżeli Fancybox „nie widzi” biblioteki jQuery — panel galerii przestaje działać lub działa nieprawidłowo.

2. Zmiany sekcji HEAD i FOOTER


PHP-Fusion korzysta z własnych funkcji odpowiedzialnych za dodawanie kodu do sekcji HEAD oraz FOOTER.
Niektóre panele automatycznie wstrzykują tam swoje skrypty i style CSS.
Problemy mogą pojawić się, gdy w layout.php:
  1. [*]usunięto fragmenty odpowiedzialne za HEAD,
  2. [*]zmieniono renderowanie motywu,
  3. [*]dodano własny system ładowania skryptów,
  4. [*]pominięto funkcje odpowiedzialne za output CMS.
W takiej sytuacji panel może być widoczny w administracji, ale jego skrypty nie zostaną załadowane na stronie.

3. Optymalizacja strony może powodować konflikty

Wiele poradników dotyczących przyspieszania stron zaleca:
  1. [*]łączenie plików JavaScript,
  2. [*]przenoszenie JS do stopki,
  3. [*]opóźnianie ładowania skryptów,
  4. [*]usuwanie „nieużywanego” kodu.

W przypadku PHP-Fusion v9 takie zmiany mogą powodować konflikty z panelami i dodatkami, ponieważ CMS sam kontroluje sposób ładowania bibliotek.

▶️ Rozwiń 🔽
Najczęstsze objawy konfliktu:
  1. [*]galeria nie otwiera zdjęć,
  2. [*]po kliknięciu obraz otwiera się w nowej karcie,
  3. [*]wyskakują błędy JavaScript,
  4. [*]efekty Fancybox nie działają,
  5. [*]panel działa tylko częściowo.

4. Jak szybko sprawdzić przyczynę problemu


Najprostszy sposób diagnozy:
  1. [*]przywrócić oryginalny plik layout.php,
  2. [*]wyczyścić cache przeglądarki,
  3. [*]odświeżyć stronę,
  4. [*]sprawdzić działanie Fancybox.

Jeżeli po cofnięciu zmian panel zacznie działać poprawnie, oznacza to konflikt wprowadzony podczas modyfikacji layoutu.

[h3]5. Dodatkowa diagnostyka</h3]
Warto również sprawdzić konsolę przeglądarki (F12 → Console).
Typowe błędy mogą wyglądać podobnie do:
▶️ Rozwiń 🔽


$ is not defined
jQuery is not defined
Uncaught TypeError

Takie komunikaty zwykle oznaczają problem z ładowaniem biblioteki jQuery lub konflikt między skryptami.

▶️ Rozwiń 🔽
Wskazówka:
Jeżeli modyfikujesz layout.php, staraj się nie usuwać oryginalnych funkcji odpowiedzialnych za ładowanie skryptów systemowych PHP-Fusion.
Najbezpieczniej dodawać własny kod bez ingerencji w mechanizmy HEAD/FOOTER CMS.
Nie masz dostępu do przeglądania załączników
ZbigniewZbigniewUżytkownik
Opublikował(a) 10 miesiąc temu
możesz przeglądać wszystkie wątki dyskusji na tym forum.
nie możesz rozpocząć nowy wątek dyskusji na tym forum.
nie możesz odpowiadać na posty w tym wątku dyskusji.
nie możesz rozpocząć ankietę na tym forum.
nie możesz dodawać załączniki w tym forum.
nie możesz pobierać załączniki na tym forum.