Zufallsbilder für die Sitebar

hcmagix

Bekanntes Mitglied
Lizenzinhaber
Registriert
11. Dez. 2010
Beiträge
411
Punkte
108
Hallo Zusammen,

vielleicht möchte das auch jemand einsetzen UND kann das für XF umbauen. Würde mich freuen.

Wie das im VB ausschaut kann man hier sehen in der Sitebar in der Box "Impressionen" bei jeder Aktualsierung wechselt das Bild. Diese sind in einem Verzeichnis auf dem Server abgelegt und haben alle dieselbe Breite von 150px und unterscheiden Sich im Dateinamen nur durch eine Nummer "impression123.jpg" zumm Beispiel.

http://www.hertha-chat.de/forum/forum.php

Es wurde wie folgt umgesetzt:

Es wurde ein Template erstellt mit dem Inhalt
HTML:
<div align="center">
  <img src="{vb:raw randomlogo}" alt="Impressionen" />
</div>

Weiterhin wurde in der Sitebar ein php Block mit dem Inhalt
PHP:
$randomlogo = "http://www.hertha-chat.de/design/slideshow/impression" . rand(1,117) . ".jpg";

$templater = vB_Template::create('Impressionen');
    $templater->register('randomlogo', $randomlogo);
// für blocks return verwenden, für widets nicht;)
return $templater->render();

angelegt. Mit rand(1,117) konnte man den Range der anzuzeigenden Zufallsbilder angeben.

Könnte jemand das in XF bespw. für das [bd] Widget Framework umsetzen? Ich habs erfolglos versucht, daher dieser Beitrag hier
 
Fast der gleiche Code:)
template:
Code:
<div align="center">
  <img src="{xen:raw $randomlogo}" alt="Impressionen" />
</div>

Datei Banner.php im Order Library:
PHP:
<?php

class Banner_Templatecallback{

    public static function getBanner($content, $params, XenForo_Template_Abstract $template){

        $randomlogo ="http://www.hertha-chat.de/design/slideshow/impression" . rand(1,117) . ".jpg";
        $bannerTemplate = $template->create('impressionen');
        $bannerTemplate->setParam('randomlogo',$randomlogo);
        return $bannerTemplate->render();
    }
}

Und last but not least => überall wo man es einfügen will, einfach
Code:
<xen:callback class="Banner_Templatecallback" method="getBanner"></xen:callback>
ins Template einfügen
 
Mein geposteter Code ist direkt für XenForo und nicht für das Widget Framework gedacht!
 
Wenn du die Gallery von sonnb nutzt kannst du mit dem Widget Framework ein Widget für die Sidebar erstellen ..
 
Bin hier leider noch keinen Schritt weiter :(

Kann jemand einen Tipp geben was den Aufruf betrifft?
machs so wie ich es oben beschrieben hab.
das ist simpel und funktioniert.

ich kann dir meinen fertigen code geben.
 
Zuletzt bearbeitet:
Principias Link beinhaltet auch einen Code mit Foren ID´s
Die beiden Beispiele ohne die Foren ID´s funktionieren bei mir.
Vlt. liegt der Fehler im erstellten Widget, da geht bei mir auch nicht alles so wie ich das gerne hätte.
 
Meine Umsetzung ist aber wie gesagt NICHT für das Widget Framework.

Das ist nur ein simpler Code, der als PHP Klasse eingefügt wird und per
Code:
<xen:callback class="Banner_Templatecallback" method="getBanner"></xen:callback>
im Template platziert wird
 
Zum Code vergleichen
 

Anhänge

  • XenDach_Zufallsbilder_1.0.0Alpha1.zip
    2,8 KB · Aufrufe: 5
Moin zusammen.
ich arbeite mit unten stehendem Code um unsere Händlerlogos anzuzeigen.
In Rot steht dann der Link zur Grafik.
Würde mir einer verraten wie ich den erweitere damit ich die Grafik anklicken kann damit man auf die Seite des Händlers gelangt?


<xen:comment>DEFINE AND RANDOMIZE YOUR BANNERS</xen:comment>

<xen:set var="$banners.1">banner one</xen:set>
<xen:set var="$banners.2">banner two</xen:set>
<xen:set var="$banners.3">banner three</xen:set>
<xen:set var="$banners.4">banner four</xen:set>
<xen:set var="$banners.5">banner five</xen:set>

{xen:raw '$banners.{xen:calc '({$serverTime} % 5) + 1'}'}
 
Ich habe heute morgen eine ganz andere, sooooooooooo einfache Lösung aufgetan :D

Widget Framework hat alles an Bord was man braucht.

Man erstellt ein neues Widget mit [Advanced] HTML

Man kann sämtlichen HTML Code , auf dem Server liegende Bilder oder sonst nutzen was man sich denken kann und setzt als Tab Gruppe "random"

random1.jpg
Man sucht sich den passenden Platz aus und fertig ist das Ding.
Den Titel kann man in <center>xxxxx</center> setzen.

random2.jpg

So nimmt man für jedes Bild oder Werbung einen neues Widget in beschriebener Tab Gruppe und hat am Ende diese Struktur. Man beachte das "random" hinter dem hook.

random3.jpg

Nun wird in schöner Regelmäßigkeit beim wechseln der Seite ein anderes Widget dieser Tag Gruppe angezeigt.

Das Leben kann so einfach sein ;)
 
Und wo ist da der unterschied zu meinem code?
Mal abgesehen das der ohne widget framework läuft?
 
Im Prinzip das gleiche System.
Nur kann ich hier mit HTML Code arbeiten den ich als Superdau im oben verlinktem nicht unterbringen kann.
 
mm. mein code sieht so aus (für 16 Bilder im ad_header template)
Finde das sehr einfach ;)

Code:
<xen:comment>DEFINE AND RANDOMIZE YOUR BANNERS</xen:comment>
<div class="position-one">

<xen:set var="$banners.1">
<img align="" border="0px" src="http://www.xxx/data/pix/1.jpg" alt="" />
</xen:set>

<xen:set var="$banners.2">
<img align="" border="0px" src="http://www.xxx/data/pix/2.jpg" alt="" />
</xen:set>

<xen:set var="$banners.3">
<img align="" border="0px" src="http://www.xxx/data/pix/3.jpg" alt="" />
</xen:set>

<xen:set var="$banners.4">
<img align="" border="0px" src="http://www.xxx/data/pix/4.jpg" alt="" />
</xen:set>

<xen:set var="$banners.5">
<img align="" border="0px" src="http://www.xxx/data/pix/5.jpg" alt="" />
</xen:set>

<xen:set var="$banners.6">
<img align="" border="0px" src="http://www.xxx/data/pix/6.jpg" alt="" />
</xen:set>

<xen:set var="$banners.7">
<img align="" border="0px" src="http://www.xxx/data/pix/7.jpg" alt="" />
</xen:set>

<xen:set var="$banners.8">
<img align="" border="0px" src="http://www.xxx/data/pix/8.jpg" alt="" />
</xen:set>

<xen:set var="$banners.9">
<img align="" border="0px" src="http://www.xxx/data/pix/9.jpg" alt="" />
</xen:set>

<xen:set var="$banners.10">
<img align="" border="0px" src="http://www.xxx/data/pix/10.jpg" alt="" />
</xen:set>

<xen:set var="$banners.11">
<img align="" border="0px" src="http://www.xxx/data/pix/11.jpg" alt="" />
</xen:set>

<xen:set var="$banners.12">
<img align="" border="0px" src="http://www.xxx/data/pix/12.jpg" alt="" />
</xen:set>

<xen:set var="$banners.13">
<img align="" border="0px" src="http://www.xxx/data/pix/13.jpg" alt="" />
</xen:set>

<xen:set var="$banners.14">
<img align="" border="0px" src="http://www.xxx/data/pix/14.jpg" alt="" />
</xen:set>

<xen:set var="$banners.15">
<img align="" border="0px" src="http://www.xxx/data/pix/15.jpg" alt="" />
</xen:set>

<xen:set var="$banners.16">
<img align="" border="0px" src="http://www.xxx/data/pix/16.jpg" alt="" />
</xen:set>

{xen:raw '$banners.{xen:calc '({$serverTime} % 16) + 1'}'}
 
Moin,
ich sag ja nichts gegen deinen Code. Den habe ich selbst am Start eben weil er so einfach ist. ;)

Leider hilft der mir aber nicht bei meiner weiter oben gestellten Frage.
Nämlich, wie kann ich diese Bilder auf die Webseiten der Händler verlinken.
Da ich dort alle mir bekannten Möglichkeiten probiert habe, der Author auf xf.com mir auch nicht antwortet, hier keine
für mich passende Lösung genannt wurde ................. habe ich eine Alternative gesucht.
 
Das Thema ist für die Zufallsbilder Geschichte ne gute Anleitung geworden, einmal mit Links und ohne. Wie jeder es mag.
Ich habs wie principia aufgebaut und es reicht mir auch da ich um die 100 Zufallsbilder verwende ohne Links :)
Bei mir ist es im template ad_sidebar_below_visitor_panel drin.
 
Zurück
Oben