Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> zawieszony AJAX w woocommerce przez wtyczki, (tylko przy razem działajacych wtyczkach )
marcin909090
post 3.03.2016, 10:55:16
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 4.11.2015

Ostrzeżenie: (0%)
-----


Witam. Mam bardzo nietypowy problem, aczkolwiek znalazłem już o nim dużo informacji, ale nikt w przestrzeni internetu nie dał jednoznacznej odpowiedzi dlaczego tak się dzieje i jaki jest uniwersalny sposób na rozwiązanie problemu. Straciłem na to już 3 dni.
Posiadam trzy napisane przeze mnie wtyczki do WooCommerce. Wszystkie wtyczki działają poprawnie gdy pracują osobno. Natomiast gdy wtyczka nr.3 (import) pracuje z jakąkolwiek inną razem (są włączone obydwie), zauważyłem, że Ajax w WooCommerce zawiesza się w dwóch miejscach (być może jest więcej miejsc). Screen poniżej (ciągle kręcące się trybiki bez możliwości kliknięcia):



Zdebugowałem błędy we wtyczce nr.3 i poprawiłem. Debugując działanie przy włączonych pozostałych wtyczkach (plik wordpress/wp-content/plugins/woocommerce/assets/js/frontend/add-to-cart.min.js debug zwraca pierwszy console.log i się zatrzymuje na linijce "$.post...". Gdy wtyczki działają osobno lub bez wtyczki nr.3 to działanie przechodzi do drugiego console.log :
  1. console.log("WEJSCIE do post");
  2. // Ajax action
  3. $.post( wc_add_to_cart_params.wc_ajax_url.toString().replace( '%%endpoint%%', 'add_to_cart' ), data, function( response ) {
  4. console.log("WYJSCIE z post");

Natomiast każda z wtyczek zwraca mi komunikat z pewną ilością przy włączeniu :
  1. Wtyczka zwróciła 9 niespodziewanych znaków podczas włączania. Jeżeli na jakimś ekranie Twojej witryny wystąpią napisy ?headers already sent?, problemy z kanałami nowości lub inne kłopoty, spróbuj wyłączyć lub usunąć tę wtyczkę.


Podobny temat był tu i tam też nikt nie wie o co dokładnie chodzi (i na wielu innych stronach).
https://wordpress.org/support/topic/checkou...ading-eternally

Macie jakieś pomysły ? Tylko bez wyłączania ajaxa w tym miejscu bo to ostateczność i zły sposób obejścia problemu smile.gif

Ten post edytował marcin909090 3.03.2016, 11:06:59
Go to the top of the page
+Quote Post
kayman
post 3.03.2016, 11:05:55
Post #2





Grupa: Zarejestrowani
Postów: 556
Pomógł: 40
Dołączył: 20.07.2012
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


to nie jest nietypowy problem, coś jest wysyłane do przeglądarki przed nagłowkiem
Go to the top of the page
+Quote Post
marcin909090
post 3.03.2016, 11:31:40
Post #3





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 4.11.2015

Ostrzeżenie: (0%)
-----


Myślisz, że ma to jakiś wpływ ? Jak samodzielnie włączę wtyczkę importu to działa z wszystkimi "headers already sent".
Wtyczka nr.3 ma plik "functions" (jeśli go wykomentuję to ajax działa). Wrzuciłem ten plik jako inna wtyczka, a z wtyczki nr.3 wykomentowałem go (teraz przy moich trzech wtyczkach ajax działa, no ale jedna nie ma swojego głównego pliku z funkcjami).
Jeśli włączę wtyczkę z tym plikiem to ajax nie działa. Co więcej, jeśli usunę całą zawartość tego pliku i wrzucę go jako wtyczka z samym komentarzem to również NIE DZIAŁA:
  1. <?php
  2. /*
  3.   * Plugin Name: test
  4.   * Description: test
  5.   * Author: mar
  6.   * Version: 1.0
  7.   */
  8. ?>


Wyświetli "Wtyczka zwróciła 7 niespodziewanych znaków podczas włączania. Jeżeli na jakimś ekranie Twojej witryny wystąpią napisy ?headers already sent?, problemy z kanałami nowości lub inne kłopoty, spróbuj wyłączyć lub usunąć tę wtyczkę."

Skąd to 7 ? skoro w ogóle nie ma treści a znaczniki są prawidłowo, kodowanie utf 8 bez bom

Ten post edytował marcin909090 3.03.2016, 11:35:31
Go to the top of the page
+Quote Post
motyl-pl
post 3.03.2016, 12:03:41
Post #4





Grupa: Zarejestrowani
Postów: 294
Pomógł: 31
Dołączył: 2.04.2010

Ostrzeżenie: (0%)
-----


próbowałeś z ob_flush() ?
https://www.google.pl/search?q=ob+flush+hea...hM8LR6ATMpa2AAw


--------------------
Go to the top of the page
+Quote Post
marcin909090
post 4.03.2016, 09:26:26
Post #5





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 4.11.2015

Ostrzeżenie: (0%)
-----


Stworzyłem nowy plik, skopiowałem zawartość poprzedniego, zapisałem i działa.... ohno-smiley.gif
Z kodowaniem UTF-8. Większość plików mam na UTF-8 bez bom... Mam tyle samo "headers already sent"
Grunt, że działa ale co_jest.gif

Ten post edytował marcin909090 4.03.2016, 09:27:00
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.04.2024 - 07:15