I have stopped developing joomla extensions because of my other works, but I won't turn off the site as long as possible so feel free download my Joomla 1.5 extensions. :)

I am on a freedom
Home Joomla tippek | My Joomla tips Tartalami beépülő (content plugin) futtatása tartalmi elemen kívül

Tartalami beépülő (content plugin) futtatása tartalmi elemen kívül

Nyomtatás E-mail
(2 szavazat)
Joomla - Tutorial
Írta: Manó - 2010. február 24. szerda, 21:07

Igaz nem túl gyakran, de előfordulhat, hogy 1-1 Joomla komponensben is szeretnénk lefuttatni a tartalmi beépülőket (content plugin).

Ilyen például ha egy komponens leírásában szeretnénk megjeleníteni egy videót, vagy a kapcsolatokhoz egy térképet a tartalmi elemekben is használt plugin segítségével.

A kapcsolattartóhoz elhelyezett térkép egy jó gyakorlati példa a szükséges lépések bemutatására.

Adott a Joomla Kapcsolat / Contact komponense ahol a kapcsolattartók adatlapján egy google térképet is szeretnék megjeleníti. Cikkeinkben már működik pl a Googlemaps Plugin, de ha a cikkeknél használt kódot beírjuk a kapcsolattartó "Egyéb adatok" mezőbe, akkor látni fogjuk, hogy a plugin nem fut le.

Rá kell vennünk, hogy erre a mezőre is fussanak le a tartalmi beépülők, amit pár perc alatt elérhetünk.

 

1., Másoljuk meg ezt:

\components\com_contact\views\contact\tmpl\default_address.php

ide:

\templates\TE_SABLONOD\html\com_contact\contact\default_address.php

 

2., Cseréljük le ezt (~117.sor)

<td>
<?php echo nl2br($this->contact->misc); ?>
</td>

erre:

<td>
<?php
$miscinfo = & JTable::getInstance('content');
$miscinfo->text = $this->contact->misc;
$dispatcher =& JDispatcher::getInstance();
$params = & new JParameter('');
JPluginHelper::importPlugin('content');
$results = $dispatcher->trigger('onPrepareContent', array (& $miscinfo, & $params, 0));
echo $miscinfo->text;
?>
</td>

Ha mindent jól csináltunk, akkor szépen meg fog jelenni a térkép. A példa alapján ezt a kódot bárhol felhasználhatjuk, csak a $miscinfo -ba kell raknunk az a tartalmat amiben a plugin kódja is van, jelen esetben a $this->contact->misc.

 

 

Hozzászólások  

 
0 #24 Akela66 2013-12-11 15:32
Szia !

Légyszíves segíts nekem annak a problémának a megoldásában, amit a cikkedben részleteztél. Joomla 1.5.26. környezetben dolgozom abszolút kezdőként.
Végig csináltam mindent, amit fent leírtál,azzal, hogy nekem nem volt a com_contact-on belül contact könyvtáram. Létrehoztam, bemásoltam a módosított default_address.php-t. Továbbra is ugyanazt csinálja, mint a változtatások előtt. Az egyéb információk ablakban megnyitja egy pillanatra a térképet, majd el is tünteti azonnal.

Köszönöm előre is a segítséged.

Akela66
 
 
0 #23 Manó 2011-06-06 19:33
Szia,

Látom a fórumon (http://forum.joomla.org.hu/) is feltetted a kérdést. Ezt szoktam én is ajánlani ;)

üdv
Manó
 
 
0 #22 2011-06-06 19:04
Sziasztok!

Szeretnék, egy jelenleg is, cikkekben működő FB Comment content plugint a Joomgallery komponensben a képek alatt megjelentetni. Tudnátok segíteni, hogy hogyan tudnám ezt megcsinálni?
 
 
0 #21 2011-04-26 06:39
csak hogy legyen mit tanulni, közben találtam egy rövidebb, "szebb" megoldást is.

echo JHTML::_('content.prepare', stripslashes($page_info['description'])) . '';

még egyszer, köszi
 
 
0 #20 2011-04-25 18:54
két szó: Isten vagy :)
 
 
0 #19 Manó 2011-04-25 17:45
ment mail
 
 
0 #18 2011-04-25 17:36
biztos én vagyok a gyakorlatlan, de ezt hova kellene betennem?
felraktam a két scriptet:
a survey: http://www.sourcepod.com/owitjj79-4711
és a plugin: http://www.sourcepod.com/rcwcbd27-4712
megtennéd, hogy ránézel?
 
 
0 #17 Manó 2011-04-25 17:22
1.,Ha nincs view akkor valószínű az MVC féle felülírás sem lesz használható, azaz ne másold be a template könyvtárba
2., próbáld ezt:
$miscinfo = & JTable::getInstance('content');
$miscinfo->text = $page_info["description"];
$dispatcher =& JDispatcher::getInstance();
$params = & new JParameter('');
JPluginHelper::importPlugin('content');
$results = $dispatcher->trigger('onPrepareContent', array (& $miscinfo, & $params, 0));
echo $miscinfo->text;
 
 
0 #16 2011-04-25 17:15
1. ennek a komponensnek nincs "view" könyvtára. maga a html a surveys.html.php-ban vannak. - gondolom ezt is át kell másolni akkor a \templates\TE_SABLONOD\html\co m_surveys\surveys.html.php -hoz
2. mit csináljak a $results-al? a változó, amiben benne van a plugin tag, az egy tömbben van, amit kiszed az adatbázisból is kiíratja:
echo stripslashes($page_info["description"])."";

és így kezdi:

$database = &JFactory::getDBO();
$database->setQuery("SELECT * FROM #__ijoomla_surveys_pages WHERE s_id=$s_id AND page_id='$page_id' AND published=1");
if (!$database->query()){
die("Error !Code 27: The process could not be finished due to internal error. Please contact the administrators");
}
$page=$database->loadAssocList();

$page_info=$page[0];
 
 
0 #15 Manó 2011-04-25 17:03
Így értettem:
$results = $dispatcher->trigger('onPrepareContent', array (& $SAJATVALTOZO, & $params, 0));
 
 
0 #14 2011-04-25 17:02
az én komponensem esetében a $page_info["description"] elemben lévő tag-ot kellene végrehajtani, egyáltalán nincs "this->" a komponens scriptjében.
 
 
0 #13 Manó 2011-04-25 16:23
Szia,

Természetesen ez csak egy példa. Minden esetben azt a változót kell oda beírni, amelyen szeretnéd lefuttatni a plugint.
 
 
0 #12 2011-04-25 16:17
Köszi a cikket, az egyetlen baj ezzel, hogy nem minden, csak core komponens esetében alkalmazható.
Én pl. az ijoomla surveys komponensben szeretnék plugint futtatni, de abban nincs $this->contact->misc... teljesen egyéni scriptelése van, szóval sajnos ezzel most nem tudok mit kezdeni
 
 
0 #11 2011-03-23 07:31
Köszi, közben lehúztam a BreezingFormot,
Használható.

üdv
 
 
0 #10 Manó 2011-03-22 20:19
Akkor neked biztos nem erre a leírásra lesz szükséged :)
Itt tudsz keresgélni: http://extensions.joomla.org/extensions/contacts-and-feedback/contact-forms
De a http://forum.joomla.org.hu fórumot is nézd át szerintem, mert biztos másnak is szüksége volt már ilyen megoldásra.
 
 
0 #9 2011-03-21 20:26
Üdv, a "nemtúlgyakran" :) remélem tudsz segíteni a problémámon:
adott a kapcsolat komponens benne a content-ben. De nekem egy modul pozícióban kellene megjelenítenem állandóan a kapcsolati formot (cookie, stb.), már ott tartok, hogy beleírom az index-be.

előre is kösz,
lja
 
 
0 #8 Manó 2010-10-04 19:30
Nincs mit. Sok sikert az oldalhoz!
 
 
0 #7 2010-10-04 09:44
Köszönöm!
Ahogy te is említetted: "Igaz nem túl gyakran, de előfordulhat, hogy 1-1 Joomla komponensben is szeretnénk lefuttatni a tartalmi beépülőket..."
Én egy fotóművész rokonom galériájához szeretnék úgy zenét - ennek ott helye van -, hogy minden egyes kategóriánál szóljon aláfestésként. Nem akartam a flash-el cifrázni.
Még 1x köszönöm!
M
 
 
+1 #6 Manó 2010-10-04 06:08
Persze, lehet. Más kérdés, hogy érdemes-e a böngésző alatti zenét erőltetni. Nagyon sok hátránya van. Erről bővebben találsz információkat a Joomla fórumon (forum.joomla.org.hu/), sokszor volt téma.
 
 
0 #5 2010-10-03 14:41
Szia Manó!
Nagyon tetszik az oldalad, hiánypótló megoldásokat látok.
Ennél a konkrét megoldásnál fölmerült bennem a kérdés, lehetne-e arra használni, hogy Phoca Galleryben a megjelenő képek - vagy a kategória - alatt háttérzene menjen?
Próbáltam mp3-lejátszó pluginnal, de én is azt tapasztaltam, amit a cikk elején írtál.
Megköszönnél, ha válaszolnál!
Üdv.:
M
 
 
0 #4 Manó 2010-03-26 13:22
A lényeg, hogy megvan a megoldás :)
 
 
0 #3 2010-03-25 22:40
Köszi a segítséget! Közben már sikerült megoldanom! A szerveren be volt kapcsolva a Safe Mode, és ez nem tetszett neki! :) Üdv
 
 
0 #2 Manó 2010-03-25 17:05
Szia!
Sok konkrétumot nem írtál :)
Így nagyon segíteni sem tudok, de pár tippet tudok adni, remélhetőleg közelebb visz a megoldáshoz.
1.,A fejlesztő oldalán - ahonnan letöltötted a plugint - nézz szét a fórumon. 2., Joomla admin súgó/Rendszerinformációt ellenőrizd. 3., Globális beállítások / Kiszolgáló / Hibajelentés beállítása hátha kiad valami felhasználható hibaüzenetet. 4., A forum.joomla.org.hu -n keress rá erre a pluginra. Ha nincs akkor a megfelelő alfórumba fel tudod tenni a kérdésed. Lehet valaki már találkozott a hibajelenséggel, és kapásból tudja, hogy az adott beépülőnek mire van szüksége. Sok sikert ;)
 
 
0 #1 2010-03-25 15:49
Szia!
Nekem olyan problémám van, hogy van egy joomla honlapom, amin egy beépülő modul generál képeket a kezdőlapra a cikkekben elhelyezett képekből. Ez a plugin azonban valamiért nem működik megfelelően, mert a szolgáltató (ultranet.hu) letiltott bizonyos php műveleteket biztonsági okokból. Kérdésem arra irányulna, hogy nem-e tudod mit kellene engedélyeznie a szolgáltatónak ahhoz, hogy ez a beépülő megfelelően működjön?! (ingyenes tárhelyen tökéletesen működik, szóval biztos, hogy szerverbeállítási probléma van)
Köszi előre is a választ!
Üdv: dsp
 

Mi is ez az oldal?

mano

Molnár László vagyok és ezen az oldalon főként a Joomla tartalomkezelő rendszerrel kapcsolatos dolgaimat találhatod.

Jegyzeteim igyekszem mások által is emészthető formában hozni, és időről-időre publikálni az oldalon.

Készülőben néhány bővítményem, amiket remélem hasznosnak fogsz találni.

Hasznos böngészést!
Manó