Da brauchst du kein Plugin für, das lässt sich mit ein wenig PHP machen: Du legst einfach für die Bilder einen eigenen Ordner an liest ihn aus.
Plugin gesucht für täglichen Bilderwechsel
-
-
- Gerade eben
- Anzeige
Hallo!
Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.
- ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
- ✔️ Deutsche Server & DSGVO-konform
- ✔️ Persönlicher Support (kein 0815-Ticket-System)
-
das ist ja soweit ok, aber es soll ja zeitlich abhängig sein(täglicher/monatlicher Wechsel), und nicht bei jedem reload ein anderes anzeigen.
-
Zitat von tadzor
im Anhang ist ne Bastelei. Bitte mal testen obs so hinkommt ;) Bei mir gehts zumindest
Datei ins PluginVerzeichnis, darin Ordner namens "rndpictures" erstellen, mit Bildern füllen. An geeigneter Stelle rndpic() einfügen. Standartzeit ist 3600 sec(1 Std). mit rndpic(10) würde z.b. alle 10 sec ein neues Bild reingesetzt
Hui - danke *freu*
Aber.... *snief*, ich glaub ich bin zu blond... Ich hab in die sidebar eingefügt:und es zeigt gar nix an :-(
Wenn das Ding dann einmal pro Tag wechseln soll, dann rndpic(86400) ?
Update:
Es zeigt ein Bild an - keine Ahnung warum, ich hab nix geändert... *murphy* :D -
-
Nochmals DANKE :D
Diese Angabe macht auch mehr Sinn - sonst weiss ich später nicht mehr, wofür die Zahl eigentlich war ;-)Falls ich den alt-tag als Bilduntertitel zeigen möchte, brauch ich da ne extra Zuweisung (wie getimagealt)?
-
im Anhang ist ne Bastelei. Bitte mal testen obs so hinkommt ;) Bei mir gehts zumindest
Datei ins PluginVerzeichnis, darin Ordner namens "rndpictures" erstellen, mit Bildern füllen. An geeigneter Stelle rndpic() einfügen. Standartzeit ist 3600 sec(1 Std). mit rndpic(10) würde z.b. alle 10 sec ein neues Bild reingesetzt
Puuh.... ich hab grad diesen uralten Thread mal ausgebuddelt, weil - ja weil das wunderschöne Plugin in WP 4.1 nicht funktioniert.
Ich vermute (sagt die mit der vielen Ahnung :???:), dass es daran liegt, wie sich das Plugin in die Datenbank einträgt. In der DB meines alten WP 3.9.1 sind 3 Spalten zu finden - in der DB für 4.1 nur 2.
Aber natürlich könnte es auch an etwas ganz anderem liegen...Hat vielleicht jemand eine Idee? Oder kennt ein passendes Plugin?
-
-
Ich habe natürlich vergessen, den (damals) aktuellen php Code einzufügen - sorry.
PHP
Alles anzeigen<?php /* Plugin Name: RandomPicturePerTime Plugin URI: Description: Displays an random image per timesetting Version: 1.01 Author: tadzor Author URI: http://www.jensmachtwerbung.com */ function pic_install () { global $wpdb, $table_prefix; $table_name = $table_prefix . "rndpic"; if($wpdb->get_var("show tables like '$table_name'") != $table_name) { $sql = "CREATE TABLE ".$table_name." (rndpictime INT(10) NOT NULL, rndpic VARCHAR(20) NOT NULL);"; require_once(ABSPATH . 'wp-admin/upgrade-functions.php'); dbDelta($sql); $insert = "INSERT INTO ".$table_name." (rndpictime) VALUES ('".time()."')"; $results = $wpdb->query( $insert ); } } function rndpic($rndtime='3600') { global $wpdb, $table_prefix; $ordner ="/wp-content/plugins/rndpictures/"; $pics = $wpdb->get_row("SELECT * FROM ".$table_prefix."rndpic"); if(($pics->rndpictime+$rndtime)<time()) { $endungen = array("gif","jpg","jpeg","png"); $verzeichnis = dir('.'.$ordner); $bilder = array(); while($datei = $verzeichnis->read()) { $datei_endung = substr( strrchr($datei,".") ,1); if(in_array($datei_endung,$endungen)) { $bilder[] = $datei; } } $verzeichnis->close(); srand ((double) microtime() * 10000000); $key = array_rand($bilder); $wpdb->query("UPDATE ".$table_prefix."rndpic SET rndpictime='".time()."', rndpic='".$bilder[$key]."' "); } echo '<img src="'.get_settings('siteurl').$ordner.$pics->rndpic.'" alt="'.$pics->rndpic.'" title="'.$pics->rndpic.'" />'; } if (isset($_GET['activate']) && $_GET['activate'] == 'true') { add_action('init', 'pic_install'); } ?> -
Hi Lilia!
Da ist ja ne ordentliche Staubschicht drauf *pust*
Freut mich das du, nach nun doch schon fast 9 Jahren, meine Bastelei immer noch einsetzt. :-)
Ich kann mal schauen, was da schief läuft.
Leider bin ich aus dem Thema WP sowie PHP seit Jahren ganz raus.
Ich glaub ich brauch erstmal wieder nen Grundkurs ;-)
Das heißt es wird ne Weile dauern...Gruß Tadzor
-
Hey Tadzor, schön, dass es dich hier noch gibt :)
Ich liebe dieses Plugin einfach und habe es seit der Erstellung ununterbrochen auf meinem Blog. Da ich den aber nicht mehr so regelmäßig zum schreiben nutze (und auch die letzten Updates verpennt habe) ist es mir erst jetzt aufgefallen, dass es nicht mehr läuft.
Das kleine Wochentag-Plugin von mir habe ich auch etwas anpassen müssen, weil die Ordnerzuordnung nicht mehr gepasst hat... keine Ahnung warum, war aber nicht schwierig.
Ich versuche gerade rotate.php anzupassen. Theoretisch dürfte das ja nicht schwierig sein - anstatt bei jedem Seitenaufruf halt jeden Tag um Mitternacht wechseln.
Nur habe ich seit damals auch nix mehr gemacht mit php (außer hier und da mal Kleinkram anpassen) und so sind meine spärlichen Kenntnisse auch sehr eingerostet.
-
So, ich habe den Fehler gefunden (denke ich zumindest), kann ihn auch lokal reparieren (zumindest auf localhost mit xampp) - aber das eigentliche Plugin krieg ich (noch) nicht repariert.
Bei der Installation müssten (so war es beim alten WP) drei Spalten in der DB angelegt werden. Aus irgendeinem Grund macht das Plugin das aber nicht, sondern legt nur zwei Spalten an (siehe Screenshots).
Wenn ich jetzt folgende Schritte durchführt, funktioniert das Plugin:
1. in der alten DB den Ordner rndpic exportieren
2. in der aktuellen WP-Installation das Plugin deaktivieren
3. in der neuen DB den Ordner rndpic löschen - DropTable
4. in der neuen DB den Ordern rndpic importieren
5. in der aktuellen WP die Ordnerstruktur anpassen (den Inhalt des Ordners rndpictime in den Ordner plugins kopieren).
6. das Plugin aktivierenNur wie ich jetzt die php-Datei ändern muss, damit sich das Plugin so in die DB schreibt wie es soll, muss ich noch herausfinden.
-
Hi!
Irgendwie fehlt da was in der PHP-Datei...
die von dir gepostete:
PHPif($wpdb->get_var("show tables like '$table_name'") != $table_name) { $sql = "CREATE TABLE ".$table_name." (rndpictime INT(10) NOT NULL, rndpic VARCHAR(20) NOT NULL);";das sollte eigentlich so oder ähnlich aussehen:
PHP$wpdb->query("CREATE TABLE IF NOT EXISTS ".$table_prefix."rndpic ( `rndid` INT(2) NOT NULL AUTO_INCREMENT PRIMARY KEY, `rndpictime` INT(10) NOT NULL, `rndpic` VARCHAR(20) NOT NULL)");ich glaub da ist irgendwie was durcheinander geraten. den ersten Part hab ich von Version 1.01
Den zweiten von der 0.5^^
Im ersten fehlt die Erstellung von rndid.Ich mach mich am Wochenende dran und korrigier das mal, damit es ohne Probleme funktioniert. Vielleicht ist dann
am Montag Patchday ;)Gruß Tadzor!
-
Da muss bei mir echt einiges durcheinander gekommen sein - typisch ich ;)
Nur... wenn da was fehlt, warum läuft es dann auf meinem alten Blog? -
5 Jahre später... und das Plugin läuft immer noch :D
Falls du hier noch einmal reinschauen solltest @tadzor - DANKE
-
Möglicher Ansatz für weitere PHP Experimente:
lies zb den Tag des Jahres aus date('z')
speichere diese Zahl in der Option Tabelle add_option, und vergleich ob der aktuelle Tag des Jahres sich geändert hat und wenn sich dieser geändert hat, nimm das nächste (zufall) Bild. -
Das klingt interessant @Shadow - das werde ich bei Gelegenheit mal ausprobieren. Aber noch funktioniert das wunderbare Teil von Tadzor ja noch.
-
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!