PDA

Zobacz pełną wersję : Fcebook Feed Pro - jQuery działa niepoprawnie



corvim
03-02-2023, 12:51
Zainstalowałem rozszerzenie na: https://testowa.goniecstaniatki.pl/

Działa niepoprawnie. Posty widoczne w jednej kolumnie nie działa link do FB, tyle na razie widzę.

Napisałem mail na support i dostałem enigmatyczną odpowiedź:

Hello.
You have at least 3 instances of jQuery running on the page. There must be only one instance. They are interfere each other.
Please remove excess instances of jQuery library.

Co autor miał na myśli pisząc " Please remove excess instances of jQuery library." ? odpublikowałem dwa komponenty które chyba były jQuery. Co jeszcze może przeszkadzać i co zrobić?

Pozdrawiam, Marek

siristru
03-02-2023, 15:33
Masz na stronie trzy razy wywołane jQuery:

https://testowa.goniecstaniatki.pl/media/jui/js/jquery.min.js <- ten wystarczy, to z core Joomli.

Te są ładowane przez szablon. Raz zminifikowany a raz nie. O usunięcie tych nadmiarowych chodziło.

https://testowa.goniecstaniatki.pl/templates/dd_running_76/jquery.js
https://testowa.goniecstaniatki.pl/templates/dd_running_76/js/jquery.min.js

Zobacz czy masz możliwość wyłączenia jQuery w ustawieniach szablonu.

corvim
03-02-2023, 16:10
Masz na stronie trzy razy wywołane jQuery:

https://testowa.goniecstaniatki.pl/m.../jquery.min.js <- ten wystarczy, to z core Joomli.

Te są ładowane przez szablon. Raz zminifikowany a raz nie. O usunięcie tych nadmiarowych chodziło.

https://testowa.goniecstaniatki.pl/t...g_76/jquery.js
https://testowa.goniecstaniatki.pl/t.../jquery.min.js

Zobacz czy masz możliwość wyłączenia jQuery w ustawieniach szablonu.


Kurczę, to przerasta trochę moje możliwości :)

Obstawiam ze ten slideshow pod menu jest JQuery. Jest ustawienie w template, ale on już jest "Disabled" w tym ustawieniu. więc to nie działa.


Jak zidentyfikować które elementy używają i gdzie to wyłączyć ? W index.php słowo "jquery" występuje 24 razy :(

- - - Updated - - -

A może da się to wyłączyć w TemplateManager ale co i jak :( ?
W linku poniżej struktura plików

https://prnt.sc/epkIoJah1MOo

i jeszcze sekcja js

https://prnt.sc/KsF5WH_Av8qm

siristru
03-02-2023, 17:52
Pokazujesz zrzuty ze struktury plików szablonu. To miejsce nie pozwoli ci wyłączyć skryptów... co najwyżej zmodyfikować zawartość plików.
Zajrzyj do ustawień szablonu czy tam można zmienić jakieś ustawienia.
Jeśli nie, to pewnie szablon ładuje na sztywno jQuery... wtedy trzeba wyedytować pliki szablonu.

Jeśli nie poradzisz sobie z tym - odezwij się do mnie na PW.

corvim
13-02-2023, 12:15
A czy taka wtyczka może pomóc rozwiązać problem ? :
https://dj-extensions.pl/dj-jquerymonster

Przetestuję dzisiaj wieczorem, ale może ktoś z was miał z tym do czynienia ...

siristru
13-02-2023, 12:31
Może pomoże :)

corvim
13-02-2023, 16:15
Może pomoże :)

Wygląda że zadziałało. Na ten moment jeszcze jeden problem. Powinien pojawić się przycisk "LoadMore" w celu wyświetlenia większej liczby postów. Tak jak na stronie demo:
https://allforjoomla.com/demo-facebookfeedpro

Ale niestety się nie pojawia. JAk w developerze przestawię display na "block" to działa. Ale nie wiem skąd zaciąga ten style. Jakiś pomysł ?

<div class="ffp-feed-load-more-container" data-bind="visible:haveMore.posts" style="display: none;">
<span class="ffp-feed-load-more-btn" data-bind="click:loadMorePosts,css:{'ffp-disabled':!postsLoaded()}"> <!-- ko if: !postsLoaded() --><!-- /ko --> <!-- ko if: postsLoaded() -->
<span data-bind="text:$root.__('load_more')">Load more</span> <!-- /ko -->
</span>
</div>

siristru
14-02-2023, 15:06
Wygląda na to, że styl jest inline. Pewnie jakiś skryp js zmienia mu styl asynchronicznie.
To może być pokłosie twoich problemów z jQuery.

corvim
14-02-2023, 15:37
Wygląda na to, że styl jest inline. Pewnie jakiś skryp js zmienia mu styl asynchronicznie.
To może być pokłosie twoich problemów z jQuery.

Ale zainstalowałem to rozszerzenie na zupełnie świeżej instalacji joomla. Jedynie template wybralem wbudowany - i tez nie działa :(
Wygląda na to że w ogóle z joomla nie działa :(

Jakiś pomysł co dalej ?

siristru
14-02-2023, 16:03
Zawsze sprawdzaj czy zainstalowane rozszerzenie działa poprawnie pod domyślnym szablonem.
jeśli nie działa to winien jest szablon.
jeśli szablon kupiłeś albo posiada wsparcie - pisz do developera.
Błędy w szablonie będą wpływać na wszystko co jest w nim widoczne.

terra
14-02-2023, 18:16
Jeśli zajrzysz do oryginału tego szablonu, view-source:https://demo-j3.joomla4.eu/dd-running-76# , to roi się w nim od wywołań JQuery. Pomieszane są wywołania z dużą ilością skryptów inline, więc to co działa domyślnie u autora niekoniecznie działa u Ciebie.
Sry ale ten szablon to "paździerz", więc nawet jak teraz rozwiążesz jakis problem, to za chwilę bedą z nim kłopoty.

Może lepiej pobierz coś z tego żródła, to też darmowe szablony, ale przynajmniej dobrze przygotowane http://dostepny.joomla.pl/zasoby/pobierz-i-wykorzystaj/category/8-szablony-dla-dostepnych-stron

corvim
15-02-2023, 09:50
Jeśli zajrzysz do oryginału tego szablonu, view-source:https://demo-j3.joomla4.eu/dd-running-76# , to roi się w nim od wywołań JQuery. Pomieszane są wywołania z dużą ilością skryptów inline, więc to co działa domyślnie u autora niekoniecznie działa u Ciebie.
Sry ale ten szablon to "paździerz", więc nawet jak teraz rozwiążesz jakiś problem, to za chwilę będą z nim kłopoty.

Może lepiej pobierz coś z tego źródła, to też darmowe szablony, ale przynajmniej dobrze przygotowane http://dostepny.joomla.pl/zasoby/pobierz-i-wykorzystaj/category/8-szablony-dla-dostepnych-stron


Zostałem poproszony o szybkie zaktualizowanie tej strony. Dużo zrobiłem ale utknąłem na tym FacebookFeedPRo nieszczęsnym. Miało być prosto bo strona jest prosta bez cudów żadnych :)
Co do samego rozszerzenia, miało problem nawet na wbudowanym templacie i Świerzej instalacji - wczoraj autor zrobił poprawkę i działa ok.
Sam już to widzę że nie obejdzie się bez zmiany szablonu więc przy okazji przeskoczę może na joomla 4.

http://dostepny.joomla.pl/zasoby - nie widzę tam informacji czy te szablony dostosowane są do joomla4 ?
Można gdzieś podglądnąć jak wyglądają czy muszę instalować po kolei i sprawdzać ?

siristru
15-02-2023, 09:57
http://dostepny.joomla.pl/zasoby - nie widzę tam informacji czy te szablony dostosowane są do joomla4 ?
Można gdzieś podglądnąć jak wyglądają czy muszę instalować po kolei i sprawdzać ?

Nie są. Testowałem na nich migrację, trzeba sporo łatać a i tak doszedłem do momentu, ze wyświetlają... ale nie mają swoich funkcji.

terra
15-02-2023, 10:29
Jeśli chcesz poczekac, za jakieś 3-4 tygodnie powinienem udostepnić szablon dla J4 (free), stworzony na bazie Cassiopea.

corvim
15-02-2023, 12:39
Jeśli chcesz poczekac, za jakieś 3-4 tygodnie powinienem udostepnić szablon dla J4 (free), stworzony na bazie Cassiopea.

Nie, zupełnie mi się nie spieszy :).

Skończę na obecnym template i jomla3. i pewnie później w tym roku pomału przerobię to na J4. Nie mam doświadczenia, właściwie uczę się na bazie obecnych problemów i robię to dla dzieciaków zupełnie za free.


Wracając do Cassiopea. Rozumiem że to wbudowany template J4. Jeśli zerkniesz na stronę https://testowa.goniecstaniatki.pl/ to nie ma tam żadnych fajerwerków oprócz Slidera i FacebookFeed - jako ekstentions. Wiec pewnie i wbudowana Cassiopea by wystaczyła.


"Marzeniem" pani która prowadzi klub jest strona w stylu: http://mzszach.krakow.pl/ a to zapewne udałoby się zrobić nawet na obecnym template. Tam tez nie ma fajerwerków tylko trochę pracy z CSS (chyba) więc i tutaj Cassiopea da radę. Tak ?

Tak coś czuję że będziecie mieli mi okazję pomóc w niedalekiej przyszłości :)

terra
16-02-2023, 09:10
Bez problemu, strona o której mowisz jest w innym cms, ale wygląad wizualny to w wiekszości CSS.

corvim
17-02-2023, 12:56
Może powinienem założyć osobny wątek, ale może uda się problem rozwiązać tutaj :)
testowa.goneicstaniatki.pl (http://testowa.goniecstaniatki.pl/)

Wygląda że FacebookFeed działa ale chciałbym zmienić styl wyświetlania wiadomości. Jak zmienići co żeby mieć wygląd jak na obrazku poniżej.


10089

siristru
17-02-2023, 13:26
Wygląda jakby to było możliwe... trzeba by sprawdzić w widokach rozszerzenia. Bez ingerencji w widok tego nie zrobisz.

corvim
17-02-2023, 14:12
Wygląda jakby to było możliwe... trzeba by sprawdzić w widokach rozszerzenia. Bez ingerencji w widok tego nie zrobisz.

A wkilku dodatkowych zdaniach.... czego dokładnie potrzebujemy i gdzie szukać ?

terra
17-02-2023, 14:23
To wymaga troche więcej wysiłku. Nie wiem czy ten widok jest z dodatku czy komponentu, ale zwykle można to zrobić poprzez override, czyli utworzenie duplikatu określonego widoku, z nowym układem i stylem.
Kopiujesz właściwy widok do katalogu 'templates/nazwa_szablonu/html/rodzaj-rozszerzenia (komponent/moduł)/nazwa_widoku/plik_widoku.php'
edytujesz go i tam dokonujesz poprawek, w tym przypadku trzeba przenieść i wystylizowac na nowo

<div class="ffp-feed-posts-item-fb-link"></div>

corvim
17-02-2023, 17:11
Trochę po omacku ale nalazłem i przeniosłem. Przyznaje, metodą prób i błędów zmieniłem styl na podobny jak w przycisku share:
Niestety utknałem, jak tera zmienić link przycisku żeby zamiast "share" zrobić view_on _FB ?





<div class="ffp-feed-posts-item-fb-link" data-bind="visible:$root.getParameter('posts_display_link')">
<!-- Oryginalny kod - ikona FB z linkiem do FB
<a data-bind="attr:{'href':item.permalink_url,'title':$root.__(' view_on_fb')}" target="_blank" rel="nofollow"><i class="ffp-icon-facebook-squared"></i></a>
-->

<!-- MarekB Zmiana-->
<a data-bind="attr:{'href':item.permalink_url},click:function(){ $root.shareLink(item.permalink_url);}" class="ffp-feed-btn" target="_blank" rel="nofollow">
<i class="ffp-icon-facebook-squared"></i> <span data-bind="text:$root.__('view_on_fb')"></span>
</a>
</div>



https://testowa.goniecstaniatki.pl/

Dobra.Zrobilem - Dumny ;)


<!-- MarekB Zmiana-->
<a data-bind="attr:{'href':item.permalink_url,'title':$root.__(' view_on_fb')}" class="ffp-feed-btn" target="_blank" rel="nofollow">
<i class="ffp-icon-facebook-squared"></i> <span data-bind="text:$root.__('view_on_fb')"></span> </a>
</div>


Teraz prosze o podpowiedź jak wyrównać te przyciski ? Grid na dwie kolkumny ?

terra
17-02-2023, 17:48
najpier zmień klasę DIV swojego nowego przycisku z "ffp-feed-posts-item-fb-link" na "ffp-feed-posts-item-share-btn-container", wtedy bedą wyglądać tak samo.

a potem klasę



.ffp-feed-posts-item-share-btn-container {
margin-top: 12px;
}


rozszerz o ten wpis
}



.ffp-feed-posts-item-share-btn-container {
margin-right: 2em;
display: inline;
}

corvim
17-02-2023, 23:19
Dziękuję wszystkim za pomoc.
Zajmę się teraz treścią i polecam się na przyszłość :)
:up:

Może tylko jeszcze jedno pytanie:) Można jakoś wymusić aby przeglądarka odświeżyła wszystkie zcaschowane pliki po otwarciu strony ? Bo może być tak że dopóki użytkownicy nie wyczyszczą danych przeglądania to nie zobaczą zmian ...

siristru
19-02-2023, 14:54
Można :)

https://css-tricks.com/snippets/htaccess/set-expires/

corvim
20-02-2023, 16:29
Można :)

https://css-tricks.com/snippets/htaccess/set-expires/



A takie "salto" ?


1- So better to give it a correct old date like:
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
For formal work, I advise to give the current date time to meta Expires instead of using Old fixed date ( that will make search engines like google mark your site as old and not be shown on toppers)
2- if your Backend is PHP you can deal with it like:
<meta http-equiv="Expires" content="<?php echo gmdate('D, d M Y H:i:s', time()-3600) . ' GMT' ?>" />
PS: I give one hour before just for in case.