Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Symfony][joomla] Integracja frameworka z CMS
kaniagandzowski
post
Post #1





Grupa: Zarejestrowani
Postów: 72
Pomógł: 1
Dołączył: 2.06.2006

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


Mam stworzony projekt w symfony 1.1 ale brakuje mi jeszcze CMS. Niestety dla wspomnianej wersji symfony 1.1 nie ma jeszcze dopracowanych pluginów CMS.

Myślałem o wykorzystaniu już sprawdzonych CMS Joomli 1.5. Istnieją pluginy dla symfony 1.0 integrujące go z CMS Joomli sfJoomla15BridgePlugin lecz z dołączonej dokumentacji nie potrafię wywnioskować jak tego dokonać.
CMS służyłby do wprowadzania akrykułów, no i może wykorzystałbym jeszcze pare innych komponentów Joomli.

Ma ktoś doświadczenie z podobnym problemem?

Wie ktoś jak wykorzystać wspomniany plugin do integracji Symfony i Joomli?
Krótko ujmująć potrzebuje w wybranej akcji symfony odpalić komponent joomli.
Z góry dzięki za pomoc.
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #2





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Ja nie wiem, ale dołączam się do prośby, bo chętnie dowiem się jak to działa (i dodatkowo, czy warto).


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
kaniagandzowski
post
Post #3





Grupa: Zarejestrowani
Postów: 72
Pomógł: 1
Dołączył: 2.06.2006

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


Wymiękam, nie wiem jak to rozwiązać ten problem. Siedziałem kilka dni i nic.

Nawet skontaktowałem się z autorem tego pluginu z prośbą o udostępnienie przykładu z jego strony www(uprzednio strona z przykładem nie działała - błąd 404 ).

Mimo wglądu do przykładu to kompletnie nie wiem jak to zrobić aby działało w symfony 1.1. dla joomli 1.5. Przykład na stronie http://snippets.strangebuzz.com/snippet/sy...e-en-deprecated tyczy się symfony 1.0 dla joomli 1.0.12.

Tak więc wpadłem na inny pomysł. Chciał bym usłyszeć opinie na temat mojego rozwiązania. Co sądzicie o tym. W sumie spełnia moje zadanie. I nawet o dziwo dobrze to mi działa.

A mianowicie zrobiłem tak

1. Zainstalowałem standardowo joomle 1.5 i skonfigurowałem tak aby można było wywołać pod adresem np. http://localhost/joomla. Do tego powyrzucałem nie potrzebne ozdoby z szablonu tak aby ładnie się wpasował wygląd generowany przez symfony. To co nie potrzebowałem wyciąłem.
2. dodałem do symfony plugin sfWebBrowserPlugin http://www.symfony-project.org/plugins/sfWebBrowserPlugin

3. stworzyłem sobie moduł np. content
  1. <?php
  2.  
  3. /**
  4.  * content actions.
  5.  *
  6.  * @package    partytime
  7.  * @subpackage content
  8.  * @author     Your name here
  9.  * @version    SVN: $Id: actions.class.php 2692 2006-11-15 21:03:55Z fabien $
  10.  */
  11. class contentActions extends sfActions
  12. {
  13.  /**
  14.    * Executes index action
  15.    *
  16.    */
  17.  public function executeIndex()
  18.  {
  19.    $this->forward('default', 'module');
  20.  }
  21.  
  22.    
  23.  public function executeAktualnosci()
  24.  {
  25.    $arrRequest = $this->getRequest()->getParameterHolder()->getAll(); // pobranie wszystkich parametrow z adresu url
  26.  
  27.      $strRequest = 'index.php?';
  28.      foreach ( $arrRequest as $strName => $strValue ){
  29.          $strRequest .= '&'.$strName.'='.$strValue;
  30.      }
  31.      
  32.      $b = new sfWebBrowser();
  33.    $b->get('http://localhost/joomla/'.$strRequest);//
  34.  
  35.      $this->res = ereg_replace('/joomla/index.php', 'http://localhost/PartyTime.pl/web/frontend_dev.php/content/aktualnosci/', $b->getResponseText()  ); /*zamieniam adresy url na adresy wskazujace na symfony a dokladnie na content/aktualnosci/ aby po kliknięciu w linka wywołał metode  executeAktualnosci() która to pózniej wywoła stronę joomli z opdowiednimi przekazanymi w adresie parametrami.
  36.   */
  37.  
  38.  }
  39. }
  40. ?>

aktualnosciSuccess.php
  1. <?php echo $res ?>


Zasada działania metody executeAktualnosci :

- Zbiera wszystkie parametry z adresu url,
- wywołuje stronę joomli i zapisuje stronę www (kod html) do zmiennej, gdzie później funckja ereg_replace zmienia wszystkie adresy url wskazujące bezpośrednio na joomle http://localhost/joomla na http://localhost/symfony/content/aktualnosci/
Tak aby każdy link kierował na symfony.

przykład url. http://localhost/PartyTime.pl/web/frontend...s&Itemid=50


Mi bardzo ładnie działa. Moim celem było tylko wyświetlanie artykułów wraz modułami (np. moduł wyświetlający najczęściej czytane artykuły).

Ten post edytował kaniagandzowski 20.10.2008, 17:58:29
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 Aktualny czas: 21.08.2025 - 18:05