PDA

Zobacz pełną wersję : Problem z migracją pluginu do Joomli 1.6



Arct
30-05-2011, 23:46
Mam taki problem. Próbuję zmigrować plugin Disqus http://extensions.joomla.org/extensions/5259/details na Joomlę 1.6. Wszystko fajnie, pięknie, na zapleczu wszystkie opcje zapisane w XML'u się pokazują, tylko, że na stronie za nic nie chce ten dodatek działać. TAK, mam ten plugin włączony. I skonfigurowany. Gdzie tkwi błąd?

danieladrianka
31-05-2011, 11:42
nie działa nie działa , bo kto CI powiedział że migracja z 1.5 na 1.6 to tylko zmiany w pliku XML ???

Może by tak zajrzeć do pozostałych plików i je też do 1.6 przystosować?

na szybko znalezione :

w J! 1.5 było tak:

function onPrepareContent( &$row, &$params, $limitstart ){

a w J! 1.6 już jest tak:

public function onContentPrepare($context, &$article, &$params, $page=0 ) {


i jeszcze pewnie parę innych

neo_fox
31-05-2011, 11:51
Poczytaj sobie:

http://www.theartofjoomla.com/home/9-developer/112-upgrading-a-plugin-to-joomla-16.html
http://www.theartofjoomla.com/home/41-extensions/132-more-on-upgrading-plugins-to-joomla-16.html

Arct
31-05-2011, 13:36
Właśnie na artykułach z theartofjoomla.com się opieram. A php też zmieniałem. Jak nie zauwsrzyliście, jest tam mn. funkcja onBeforeRender, którą nijak można znaleźć w J!1.5

danieladrianka
31-05-2011, 14:13
Jak byś czytał co napisałem to byś się domyślił że to co ci podałem znalazłem w plikach które wrzuciłeś w paczce w 1 poście a tego w wersji 1.6 prawa nie ma być!!!
pozmieniaj funkcje, klasy na prawidłowe a nie zostawiaj stare i dodajesz jakieś nowe. Jak to się ma kupy trzymać??

Wiem że w necie mało informacji na ten temat (po polsku to już w ogóle braki) ale jak się chce to się zrobi. Najlepiej korzystać z podglądu plików w gołej Joomla! i na nich się uczyć.
Swoją drogą już jakiś czas za mną chodzi chęć napisania czegoś po polsku na ten temat ale ciągle jakieś ważniejsze sprawy wyskakują. No ale może niebawem....

Aha i kolejna rzecz zauważona właśnie w "twoich" plikach :
parametry nie przekazuje się już za pomocą :

$selectedCategories = $pluginParams->get('selectedCategories','');

tylko w ten sposób:

$selectedCategories = $this->params->def('selectedCategories','');

I na koniec:
Jak się czegoś nie umie to się tego uczy choćby na przykładach innych, szuka i czyta (ze zrozumieniem) no i oczywiście pyta. Ale pytać to trzeba uważnie. Odpowiedzi czasem (jak ta) podają podstawy które mógłbyś sam znaleźć w necie, a tak to zająłeś mi czas i teraz muszę spadać dalej ściany w pokoju malować.

Ps. potraktuj to nieco żart...obliwie

Arct
31-05-2011, 14:27
Zastanawia mnie tyko to, że w orginale dla 1.5 nie ma żadnej funkcji typu onContent, a plugin działa normalnie. Dokładnie jak to było nie podam, bo teraz piszę z komórki. Tak w ogóle to dzięki za wskazanie wszystkich błędów. Sorry za te błędy typu przekazywanie parametrów. Ja tak bardziej w C++ siedzę, a w dokumentacji nigdzie tego nie znalazłem, co gdzie i jak.

danieladrianka
31-05-2011, 15:48
jak nie było jak było i jest nadal !?

czytaj, czytaj i jeszcze raz czytaj !

gdybyś naprawdę poświęcił trochę więcej czasu na szukanie i czytanie to wiedziałbyś że to co ci w moim 1 poście napisałem rozwiewa twoje zastanawianie nad problemem

onPrepareContent === onContentPrepare (pierwsze dla J!1.5 drugie dla J!1.6 są sobie równoznaczne, zmieniono nazwę 'a raczej sposób zapisu, oraz zmieniła się liczba parametrów)


Dyskusja staje się 'chyba' nie potrzebna i zaczyna odbiegać od tematu, więc najpierw poczytaj, poucz się na prostszych przykładach a dopiero potem weź się za migracje większych produktów.

A odpowiedź na Twoje pytanie:" Gdzie tkwi błąd?" jest prosta: W niewiedzy autora postu który nie ma pojęcia jak migrować z 1.5 do 1.6. Reszta odpowiedzi to ogólna pomoc i ukierunkowanie w stronę która powinna pomóc.

Ps. Swoją drogą wielu ludzi co jakiś czas pyta jak to czy tamto poprawić czy stworzyć ale jakoś nikt potem nie chwali się swoim produktem już gotowym. Czyżby nikt (no prawie nikt) w Polsce nie pisał nic dla Joomla!??

Arct
31-05-2011, 15:55
To nie z niewiedzy mojej, tylko tego, że jestem ślepy nie mogę tego zmigrować do 1.6 :D.. dopiero teraz zauważyłem, że onPrepareContent w orginale jest na początku :D Dobra, dzięki wielkie! Zobaczę, może uda mi się dzisiaj jeszcze pochwalić tym, co wyczaruję w tym "moim" pluginie :)