[Gelöst] Companydirectory -> Random / Zufall

Hilfe zu Modulen und Tags
Post Reply
User avatar
antiheld2000
Forum Members
Forum Members
Posts: 236
Joined: Thu Jan 31, 2008 9:23 am

[Gelöst] Companydirectory -> Random / Zufall

Post by antiheld2000 »

Hi,

ich würde gerne per Zufall aus dem Companydirectory 3 Einträge in einem Summarytemplate anzeigen lassen. Hat hier jemand eine Idee, wie ich das erreichen kann?

Dank und Gruß
anti
Last edited by antiheld2000 on Sat Jan 01, 2011 9:41 pm, edited 2 times in total.
User avatar
antiheld2000
Forum Members
Forum Members
Posts: 236
Joined: Thu Jan 31, 2008 9:23 am

Re: Companydirectory -> Random / Zufall

Post by antiheld2000 »

So, da hab ich mir einen Workaround basteln können. Dieser ist nicht performant und nicht professionell, aber funktioniert.

Man erstelle einen UDT namens rand_items:

Code: Select all

global $gCms;
$items = $gCms->smarty->get_template_vars('items');
$gCms->smarty->assign('itemcount', count($items));

if ($items) {
	shuffle($items);
	$zaehler = 0;
	foreach ($items as $value) {
		if ($zaehler < $params['menge']) {
			$itemarray = get_object_vars($value);
			if ($itemarray[logo_location] != '') {
				# Hier die Ausgabe anpassen
				$ausgabe .= '<a href="'.$itemarray[detail_url].'" title="'.$itemarray[company_name].'"><img src="'.$itemarray[logo_path].'" /></a>';
				$zaehler++;
				$ausgabe .= '</div></div></div>';
			}
		}
	}
}
echo $ausgabe;
$gCms->smarty->assign('linecount', $zaehler);
Dann erstellt ein Zusammenfassungstemplate namens Logos im CompanyDirectory Modul mit folgendem Inhalt:
{rand_items menge=11}s

Aufruf in der Vorlage / im Layout:
{CompanyDirectory summarytemplate="Logos"}

Das war's. Lässt sich auch auf andere Module adaptieren, bei denen eine Randomfunktion fehlt.
User avatar
antiheld2000
Forum Members
Forum Members
Posts: 236
Joined: Thu Jan 31, 2008 9:23 am

Re: [Gelöst / Workaround] Companydirectory -> Random / Zufall

Post by antiheld2000 »

*push*

Ich benötige gerade für ein anderes Projekt wieder die Möglichkeit, per Random 9 Elemente aus der CompanyDirectory auszuwählen. Hier ist mein ehemaliger Workaround aber nicht wirklich zu gebrauchen. Hat jemand vielleicht mittlerweile eine bessere Idee?
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am

Re: [Gelöst / Workaround] Companydirectory -> Random / Zufall

Post by nicmare »

kannst du es nicht einfach wie hier machen?
http://forum.cmsmadesimple.org/index.ph ... 204.0.html
du brauchst doch nur das array shufflen und die ersten drei einträge anzeigen lassen
User avatar
antiheld2000
Forum Members
Forum Members
Posts: 236
Joined: Thu Jan 31, 2008 9:23 am

Re: [Gelöst / Workaround] Companydirectory -> Random / Zufal

Post by antiheld2000 »

Danke. Das war's. Echt simpel:

Code: Select all

{capture}{$items|@shuffle}{/capture}
Post Reply

Return to “Module und Tags”