Zufällige Bilder aus Coppermine-Galerie in WordPress einbinden

Copppermine LogoSchon gesehen? Es gibt (wieder) ein paar Zufallsbilder in meiner Sidebar zu sehen. Zwischenzeitlich war das aufgrund von Pluginschwierigkeiten und der fehlenden Zusammenarbeit von WordPress und Bildergalerie nicht möglich. Bei der Überwindung der Schwierigkeiten bin ich über verschiedene Möglichkeiten zur Darstellung von (zufälligen) Bildern gestoßen und die möchte ich hier aufzählen mit den jeweiligen Anforderungen, Vor- und Nachteilen.

Bildquelle: Coppermine Logo Competition

Das Problem betrifft wahrscheinlich nicht viele Nutzer, aber es soll noch Leute geben, die nicht auf einer Foto-Community-Seite (engl. Photo Sharing) ihre Fotos hochladen und ausstellen, sondern auf dem eigenen Server eine Galerie betreiben, so wie meiner einer. Eines der verbreitetsten und beliebtesten Programme dafür ist Coppermine. Jedenfalls gibt es sicherlich einige WordPress-Nutzer, die diese Galerie verwenden und vielleicht auch noch einige zufällige Bilder in der Sidebar anzeigen lassen wollen.

Bei der Gelegenheit habe ich übrigens auch das Galerie-Theme an das geänderte Blog-Theme angepasst. Das war etwas fitzelig, bis alles so aussah, wie ich wollte[1] und bis es validierte. Nun aber zum eigentlichen Thema dieses Beitrags.

Klassisch mit dem Coppermine-Plugin für WordPress

Bevor wir zur eigentlichen Methode kommen, noch eine kurze Vorgeschichte. Die Entwicklung des ursprünglichen Plugin wurde irgendwann letztes Jahr eingestellt[2], aber bis zur WordPress-Version 2.3 war das egal, da es trotzdem weiterhin funktionierte. Irgendwann habe ich es auch aufgegeben, an den entsprechenden Stellen nach Aktualisierungen zu suchen und habe damit verpasst, dass seit Mai doch weiter entwickelt wird (Altenativversion) und es neue Features gibt[3]. Und mittlerweile ist es auch für WP 2.3 verfügbar.

Das Plugin kann sehr viel mehr, als nur einfach Bilder in der Sidebar anzeigen. Es bietet eine echte Verbindung der zwei Programme, so dass z.B. beim Schreiben eines Beitrags in WordPress mehrere Felder von Coppermine angezeigt werden, mit denen man Bilder aus der Galerie einfügen kann (bei mir hier tauchen ja ab und zu solche Bilder auf).

Um nun damit zufällige Bilder in der Sidebar anzeigen zu lassen, (muss zunächst einmal das Plugin installiert und eingerichtet sein (Anleitung bei MrsBumblebee), aber das setze ich jetzt voraus) wird an entsprechender Stelle, d.h. in der sidebar.php oder in einem Widget die folgende Funktion aufgerufen[4]:

cpg_random_images($num, $owner_id=0,$style=array());

Von den Optionen ist eigentlich nur $num wichtig, d.h. wie viele Bilder angezeigt werden (standardmäßig: 0). Mit owner_id können die Bilder eines bestimmten Nutzers angezeigt werden (standardmäßig: von allen) und mit $style=array() kann das Aussehen des Links und des Bildes angeglichen werden (standardmäßig: Bild zentriert, Link zur Einzelbildansicht).

Die Anzeige rechts in der Sidebar mit drei Bildern wurde also realisiert mit

cpg_random_images(3);

Diese Lösung ist also optimal für jemanden, der generell eine Einbindung von Coppermine in WordPress möchte und sich soweit mit den Gegebenheiten auskennt, dass er das Plugin richtig installieren und konfigurieren kann[5] und die Templatedateien anpassen kann bzw. ein PHP-Widget erstellen kann.

Ein Bild mit dem Coppermine-Widget

Es gibt ein Widget zur Anzeige (eines) zufälligen Bildes, das auf das obige Plugin zurückgreift. Meines Wissens funktioniert das allerdings nicht mehr. Bei wem das nicht der Fall sein sollte, der kann natürlich damit ganz einfach ein Zufallsbild anzeigen lassen.

Vorteil ist hier, dass man nicht viel machen muss, da das Widget das andere Plugin nutzt. Man muss natürlich ein Theme haben, dass Widgets unterstützt. Ein Nachteil ist, dass man nicht viel einstellen kann und nur durch Bearbeiten der Plugindatei das Aussehen ein wenig anpassen kann. Möchte man z.B. drei statt ein Bild angezeigt bekommen, so sucht man die Zeile, in der die Funktion aufgerufen wird mit cpg_random_images(1); und ändert die 1 in eine 3.

Bastelei mit dem CpmFetch-Plugin für Coppermine

CpmFetch ist ein Plugin für Coppermine (nicht für WordPress!), mit dem man so tolle Sachen machen kann wie

  • Display tables of images from your gallery.
  • Display statistics from your gallery.
  • Retrieve data to format as you wish.
  • Extend the CpmFetch object.
  • Generate RSS Feeds.

Das ist ja genau das, was hier verlangt wird. Das Problem ist nur, dass das etwas fitzelig werden könnte. Aber die Dokumentation hilft da weiter. So habe ich mir ein PHP-Widget gebastelt, das folgenden Inhalt hat

  include "/home/user/www/cpg/cpmfetch/cpmfetch.php";
  $objCpm = new cpm("/home/user/www/cpg/cpmfetch/cpmfetch_config.php");
  $opti = array('imagewidth' => 180);
  $opti = array('imagelink' => int);
  $objCpm->cpm_viewRandomMedia (3,1,$opti);    // 
  $objCpm->cpm_close();

Hier wird einmal das CpmFetch-Plugin von Coppermine eingebunden und dann ein neues Cpm-Objekt ($objCpm) erzeugt, das dann mit cpm_viewRandomMedia (3,1,$opti); die zufälligen Bilder (3 Zeilen, 1 Spalte) aufruft. Die nötigen Parameter habe ich mir aus der Dokumentation zusammengesucht.

Wichtig zu erwähnen ist vielleicht noch, dass die beiden Pfadangaben hier ausnahmsweise absolut sind, da ich den Blog und die Galerie unter verschiedenen URLs betreibe. Ansonsten hätte man auch einen relativen Pfad verwenden können (wie z.B. ../cpg/cpmfetch/cpmfetch.php).

Dies ist sicherlich die Methode, bei der man am meisten anpassen kann. Allerdings nur, wenn man weiß, wie es geht. Ich habe die richtigen Optionen durch Probieren rausgefunden und ganz so, wie ich es wollte, habe ich es doch nicht hinbekommen.

Einfach und komfortabel mit dem CpmFetch-Widget

Da das Basteln mit den Parametern nicht jedermanns Sache ist, gibt es natürlich auch ein komfortables Widget. Damit können die obigen Parameter per Eingabe bestimmt werden und außerdem können noch die neuesten und die am häufigsten angesehenen Bilder angezeigt werden.

Das ist bei Weitem die einfachste Methode, die am wenigsten Kenntnisse voraussetzt. Man muss nur das CpmFetch-Plugin für Coppermine und das CpmFetch-Widget für WordPress installieren und schon kann es losgehen. Naja, nicht ganz, denn auch hier schlug wieder das Pfadproblem zu. Der Autor des Plugins hat zwar Hinweise zur Lösung des Problems gegeben, aber es war nicht ganz einfach, die richtigen Stellen anzupassen. Sollte jemand das gleiche Problem haben, der kann sich gerne an mich wenden, denn ich weiß jetzt, wo was angepasst werden muss.

Fazit: Für jeden, der Coppermine verwendet und seine Bilder in WordPress einbinden möchte, sollte es mit einer der vier Möglichkeiten machbar sein. Ich habe drei davon erfolgreich ausprobiert und mich schließlich für die erste Variante entschieden.

Wer jetzt auf den Geschmack gekommen ist, kann das ja mal ausprobieren. Bei Fragen stehe ich gerne zur Verfügung bzw. vielleicht gibt es bei den Originalautoren der entsprechenden Plugins schon eine Lösung.

  1. Falls jemandem, der mit dem IE 6 unterwegs ist, auffällt, dass die Sidebar ganz unten ist: das weiß ich, das liegt daran, dass der IE overflow:visible nicht richtig interpretiert. []
  2. Mittlerweile existiert auch die Seite des Programmierers nicht mehr. []
  3. Ein dickes Dankeschön an den Entwickler an dieser Stelle! []
  4. PHP-Code kann in Widgets mithilfe des Plugins PHP Exec ausgeführt werden. []
  5. Die Datenbankverbindung muss hergestellt werden und die Nutzer von Galerie und Blog müssen eingestellt werden. []

Veröffentlicht von

juliaL49

Wilde Mischung aus musikinteressiertem Konzertbesucher, fernsehbegeistertem Whovian, radfahrendem Läufer, fotografierendem Atheisten und ausgewandertem Bioinformatiker

6 Gedanken zu „Zufällige Bilder aus Coppermine-Galerie in WordPress einbinden“

  1. Man sollte bei solchen Zufallsbildern aber auch einen Filter setzen. Wenn dann ein Bild von „Mein Kampf“ so unkommetiert dasteht kann das für Verwirrung sorgen.

  2. Guter Hinweis, meine Galerie wollte ich sowieso nach solchen Bildern durchforsten! Sollte nicht wieder vorkommen.

    PS: Das Bild entstand in einem Buchladen in Baltimore, wo ich es ziemlich schockierend fand, das ein solches Buch da frei verkäuflich ist und das musste ich natürlich fotografisch festhalten.

  3. Hast du da zufällig eine ausführliche Installations- und Verknüpfungsanleitung für dumme? :help: Ich hab schon ewig rumproboiert und gesucht, aber ich krieg’s einfach nicht hin. :motz:

  4. Was genau möchtest du denn machen? Also Zufallsbilder anzeigen lassen (welche Methode?) oder überhaupt erstmal das Coppermine-Plugin?

  5. Ich möchte gerne das Plugin installieren und dann Bilder aus meiner Galerie, die sich auf meiner Subdomain befindet, in die Sidebar einbinden. Aber es scheitert schon beim richtigen Hochladen des Plugins. Welcher Ordner muss wo hin und wie kann ich WordPress und Coppermine miteinander verknüpfen? Es wäre total super, wenn du mit da helfen könntest.

    Viele Grüße, MrsBumblebee

Kommentare sind geschlossen.