Über dieses Plugin

IDF PDF Thumbnail löst das Problem, dass viele Webserver keine PDF-Vorschau im Browser unterstützen. Das Plugin registriert einen eigenen Post Type für PDFs, erzeugt Thumbnails automatisch serverseitig und stellt einen Shortcode bereit, der klickbare Vorschaubilder im Frontend rendert: Ein Klick öffnet das PDF im neuen Tab. PDFs können per ACF Relationship-Feld Produkten, Seiten oder Beiträgen zugeordnet werden.

Features

  • Custom Post Type: Eigener Verwaltungsbereich für PDF-Dokumente mit Vorschaubildern.
  • Import aus der Mediathek: Der Reiter Import legt für jedes PDF der Mediathek einen Eintrag an, damit alle PDFs der Website in einer Liste stehen. Er lässt sich wiederholen, Übernommenes wird übersprungen.
  • Ablösung von PDF Image Generator: Der Import übernimmt die Vorschaubilder des nicht mehr gepflegten Plugins, stellt Beitragsbilder um und ersetzt eingefügte Vorschaubilder im Inhalt durch den Shortcode. Vorher schaltet er „Keep Generated Images“ ein, damit beim Löschen des alten Plugins keine Bilder verloren gehen.
  • Automatische Thumbnails: Dreistufiger Fallback, lokal per Imagick, remote über den IDF Thumbnail Service (pdftoppm oder Imagick), oder manueller Upload.
  • Shortcode: mit Parametern für Breite, CSS-Klasse und Titelanzeige. Klick öffnet das PDF im neuen Tab.
  • URL-Shortcodes für PostCards: gibt die Thumbnail-Bild-URL zurück, die PDF-Datei-URL. Gedacht für dynamische Felder in AVADA PostCards und Page Buildern.
  • Featured Image Auto-Sync: Das Thumbnail wird automatisch als WordPress Featured Image gespeichert. AVADA PostCards und Theme-Funktionen zeigen dadurch automatisch das richtige Vorschaubild.
  • PDF-Zuordnung (ACF Relationship): Bidirektionale Zuordnung von PDFs zu Produkten, Seiten und Beiträgen. Die Felder werden manuell über die ACF-Oberfläche konfiguriert, Synchronisation über IDF ACF Bidirectional Sync.
  • Einheitlicher System-Status: Farbcodierter Status (✓ grün / ✗ rot) auf Dashboard, Einstellungen, Hilfe und Editor-Sidebar.
  • IDF Thumbnail Service: DSGVO-konformer REST-Endpoint auf ihre-ideenfabrik.de. Nutzt primär pdftoppm, Imagick als Fallback. Lizenz-authentifiziert über IDF Home.
  • Detaillierte Fehlermeldungen: Bei fehlgeschlagener Thumbnail-Erzeugung wird die genaue Ursache angezeigt.
  • IDF-Home-Anbindung: Lizenzprüfung und automatische Updates über IDF Home.

Changelog

v1.6.0

Hinzugefügt

  • Shortcode-Attribut img_class für zusätzliche CSS-Klassen am Vorschaubild, mehrere durch Leerzeichen getrennt.

Behoben

  • Beim Umstellen ging die Klasse thumb-of-pdf am Bild verloren. Gestaltung, die ein Theme für die Vorschaubilder von PDF Image Generator vorsieht, etwa ein Rahmen, griff danach nicht mehr. Der Import schreibt jetzt img_class="thumb-of-pdf" mit. (#11)
  • Die Zahl der Inhalte mit Vorschaubildern von PDF Image Generator zählte auch Einträge mit, die die Klasse nur nennen, etwa zusätzliches CSS. Gezählt und gelistet werden nur noch Inhalte, in denen wirklich ein solches Bild steht.

v1.5.0

Hinzugefügt

  • Neuer Reiter "Import": holt alle PDFs der Mediathek in die Liste. Jedes PDF ohne Eintrag bekommt einen, mit Titel und Datum des PDFs. Wiederholbar: Übernommenes wird übersprungen, ein gelöschter Eintrag kommt nicht zurück. PDFs aus den geschützten Download-Ordnern von WooCommerce und Easy Digital Downloads bleiben außen vor. (#11)
  • Übernahme aus PDF Image Generator: dessen Vorschaubilder werden Vorschau- und Beitragsbild, Beitragsbilder mit PDF zeigen danach auf das Vorschaubild, und eingefügte Vorschaubilder im Inhalt werden durch [idf-pdf-thumb] in derselben Breite ersetzt. Der vorherige Inhalt bleibt gesichert; Vorschaubilder mit Bildunterschrift oder ohne Link bleiben stehen und werden gemeldet.
  • Vor dem Umstellen schaltet der Import in PDF Image Generator "Keep Generated Images" ein. Ohne diese Einstellung löscht dessen Deinstallation alle erzeugten Vorschaubilder.
  • Knopf "Vorschaubilder erzeugen" für alle Einträge ohne Vorschaubild, ein PDF je Anfrage.
  • Abilities idf-pdf-thumbnail/import-pruefen und idf-pdf-thumbnail/import-ausfuehren: der Import lässt sich über MCP prüfen und ausführen.

v1.4.2

Behoben

  • Die Remote-Erzeugung meldete einen fehlenden Lizenzschluessel, obwohl einer hinterlegt war. Das Plugin las idf_master_key_license_key, also den Optionsnamen aus der Master-Key-Zeit. IDF Home speichert den Schluessel seit v2.0.0 unter idf_home_license_key und kopiert den alten Wert nur einmalig beim Upgrade von v1.x; wo IDF Home direkt als 2.x eingerichtet wurde, hat die alte Option nie existiert. Auf k1.de brach die Erzeugung deshalb ab, waehrend das Dashboard den Schluessel als gueltig auswies. Der Schluessel kommt jetzt aus idf_home_get_license_key() (IDF Home ab v2.4.0), mit Rueckfall auf beide Optionen fuer aeltere Installationen.
  • Die Fehlermeldung nannte das Vorgaengerplugin und schickte den Betreiber damit auf die falsche Suche. Sie verweist jetzt auf die Einstellungen von IDF Home.
  • Der Hinweis am Schalter fuer die Remote-Erzeugung nannte ebenfalls das Vorgaengerplugin und enthielt einen Tippfehler ("Erforderert"). Beides korrigiert.

v1.4.1

Behoben

  • Der Dependency-Checker heisst jetzt IDF_PDF_THUMBNAIL_Dependency_Checker. Der geteilte Klassenname IDF_Dependency_Checker, den fast alle IDF-Plugins mitbringen, wird nicht mehr angefasst. Die eigene Kopie war durch ihre bedingte Deklaration selbst geschuetzt, wirkte aber als Ausloeser: sobald sie die geteilte Klasse zuerst deklarierte, starb die frueh gebundene Kopie eines anderen IDF-Plugins. Sobald ein zweites IDF-Plugin dieselbe Klasse deklarierte, starb jeder Request mit "Cannot declare class IDF_Dependency_Checker" - auf k1.de hat das am 03.09.2026 zweimal die ganze Website lahmgelegt, weil die Aktivierung durchlief und der Fehler erst im Folge-Request entstand. Die Installationsreihenfolge der IDF-Plugins ist damit ohne Bedeutung.

v1.4.0

Neu

  • Vorschaubilder lassen sich jetzt direkt aus der PDF-Liste neu erzeugen: in der Spalte "Vorschau" steht je Zeile ein Knopf "Neu erzeugen", der das Bild per AJAX austauscht, ohne den Eintrag zu öffnen. Nötig, weil eine in der Mediathek ersetzte PDF-Datei ihre Attachment-ID behält - das Plugin bekommt vom neuen Inhalt nichts mit und zeigt weiter das alte Vorschaubild. (#8)
  • Sammelaktion "Thumbnails neu erzeugen" in der Auswahlliste der PDF-Liste, für mehrere Einträge auf einmal. Das Ergebnis meldet eine Notiz mit Zähler; Einträge ohne zugeordnete PDF und ohne Berechtigung werden übersprungen statt als Fehler gezählt.

Geändert

  • Die AJAX-Erzeugung prüft die Berechtigung jetzt am konkreten Beitrag (edit_post) statt nur allgemein an edit_posts. Der Aufruf kommt seit dieser Version auch aus der Liste, also für beliebige Beitrags-IDs.
  • Die Spalte "Vorschau" ist von 80 auf 120 Pixel verbreitert, sonst bricht der Knopf um.

v1.3.2

Behoben

  • Auf der Kategorie-Verwaltung stand die Reiterleiste an der falschen Stelle: rechts über der Kategorie-Tabelle statt unter der Überschrift. Ursache war der Filter aus v1.3.1 - er liegt in edit-tags.php innerhalb der rechten Spalte. Zwischen Überschrift und Spalten gibt es dort überhaupt keinen Hook, deshalb wird die Ausgabe dieser einen Seite jetzt gepuffert und die Leiste hinter den Kopf-Marker gesetzt. (#7)

v1.3.1

Behoben

  • Die Kategorie-Verwaltung stand als Reiter in der Leiste, hatte aber selbst keine: von dort führte kein Weg zurück außer dem Browser-Zurück. Sie bekommt die Leiste jetzt über den Filter views_edit-idf_pdf_category. (#7)

v1.3.0

Geändert

  • Menü nach IDF-Konvention: ein Eintrag "PDF Thumbnail" unter IDF Home, die übrigen Seiten sind Reiter statt Menüpunkte. Ohne IDF Home wie bisher ein eigener Top-Level-Punkt. Alle bisherigen Seiten-URLs bleiben gültig. (#7)
  • Die PDF-Liste und der Editor bekommen die Reiterleiste über views_edit-idf_pdf und edit_form_top, also unter der Überschrift. Ohne sie wären beide nach dem Umbau eine Sackgasse gewesen.
  • Neuer Reiter "Kategorien": die Taxonomie-Verwaltung war bisher nur über die direkte URL erreichbar, weil der CPT kein eigenes Menü mehr hat.
  • seiten() ist die einzige Quelle für Slug, Titel, Berechtigung und URL der Admin-Seiten; die Reiterleiste prüft dieselbe Berechtigung wie der Menüeintrag.
  • Der Eintrag "Neues PDF" entfällt: das ist eine Aktion, kein Bereich, und der Erstellen-Knopf steht über der Liste.

Behoben

  • fix_parent_menu() trug eine Typ-Deklaration an einer fremden Filtergrenze. Reicht ein anderes Plugin dort null durch, war das ein kritischer Fehler statt eines wirkungslosen Hooks. Ersetzt durch saubere parent_file- und submenu_file-Filter ohne Typ-Deklarationen.

v1.2.2

Erstes Release über die Gitea-Actions-Kette. Die Versionen 1.2.0 und 1.2.1 waren am Git-Weg vorbei ausgeliefert worden und existierten nur auf dem Webspace; ab hier kommt jede Auslieferung wieder aus dem Repo. Funktional entspricht diese Version der ausgelieferten 1.2.1.

Behoben

  • Plugin-Header: "die das PDF im neuem Tab oeffnen" heißt wieder "im neuen Tab".
  • Die Trennlinien in der Hauptdatei waren von (U+2500) auf (U+2B1B) gekippt und sind wiederhergestellt.
  • Lange Bindestriche erneut durch normale ersetzt.

v1.2.1

Behoben

  • Avada zeigte den Post Type idf_pdf im PostCard-Element nicht an, ein Filter nach der Kategorie war dadurch unmöglich. Ursache war die Registrierung mit public => false und show_in_rest => false.
  • Umgestellt auf public => true, show_in_rest => true, publicly_queryable => true, dazu exclude_from_search => true, show_in_nav_menus => false und show_in_admin_bar => false.

Hinweis

  • rewrite => false bleibt: PDFs haben weiterhin keine eigene Frontend-Seite, und exclude_from_search hält sie aus der WordPress-Suche heraus.

v1.2.0

Hinzugefügt

  • Flache Taxonomie idf_pdf_category für Kategorisierung der PDFs (Rewrite-Slug /pdf-kategorie/<term>/).
  • Filter-Hook idf/pdf-thumbnail/taxonomy_args.
  • Hilfe-Seite um Avada-PostCard-Anleitung und WP_Query-Beispiel erweitert.

Hinweis

  • Nach dem Update einmal Permalinks neu speichern, damit der Rewrite-Slug greift.

v1.1.1

Geändert

  • ACF Relationship-Felder werden manuell über die ACF-Oberfläche konfiguriert (statt per Code).

v1.1.0

Hinzugefügt

  • Shortcodes [idf-pdf-thumbnail-url] und [idf-pdf-url] für dynamische Felder in Avada PostCards und Page Buildern.
  • Featured Image Auto-Sync - Thumbnail wird zugleich als WordPress Featured Image gespeichert.
  • ACF Relationship-Felder für bidirektionale PDF-Zuordnung.

v1.0.7

Hinzugefügt

  • IDF Thumbnail Service nutzt jetzt pdftoppm als primäre Methode (Imagick als Fallback, schneller und umgeht ImageMagick Security Policy).

v1.0.6

Geändert

  • Status-Texte kompakter - kein Umbruch mehr in schmalen Sidebar-Fenstern.

v1.0.5

Geändert

  • Status-Rendering vereinheitlicht (eine Darstellung für alle Seiten).

Behoben

  • ImageMagick Security Policy wird jetzt aktiv getestet (Mini-PDF-Read), nicht nur Format-Liste.

v1.0.4

Hinzugefügt

  • Einheitlicher System-Status auf allen Seiten mit Farbcodierung (grün ✓, rot ✗).
  • Granulare Prüfungen: Imagick-Extension, PDF-Support/Ghostscript und IDF Thumbnail Service getrennt.
  • Meta-Box „System-Status" in der Editor-Seitenleiste.

v1.0.3

Behoben

  • Lizenzschlüssel wurde nicht gefunden (falscher Option-Name).

v1.0.2

Hinzugefügt

  • Shortcode-Meta-Box im Editor ([idf-pdf-thumb id="X"] zum Markieren und Kopieren).

Behoben

  • Spezifische Fehlercodes statt generischer Meldung bei Remote-Thumbnail-Erzeugung.
  • Admin-Menü „PDF Thumbnail" wird jetzt beim Bearbeiten als aktiv markiert.

v1.0.1

Hinzugefügt

  • Detaillierte Fehlermeldungen bei fehlgeschlagener Thumbnail-Erzeugung.
  • IDF Thumbnail Service-Verfügbarkeit in allen Statusfenstern.

Behoben

  • „Automatisch erzeugen" schlug fehl, wenn der Beitrag noch nicht gespeichert war.

v1.0.0

Hinzugefügt

  • Initiales Release.
  • CPT idf_pdf für PDF-Verwaltung.
  • Shortcode [idf-pdf-thumb].
  • Automatische Thumbnail-Erzeugung: lokal (Imagick) → Remote (IDF Service) → manueller Upload.
  • IDF Thumbnail Service als REST-Endpoint (Lizenz-authentifiziert).
  • Master-Key-Anbindung (Lizenz + Updates).

0 Comments

Info
  • Version: 1.6.0
  • Version vom: 14. September 2026
  • WordPress-Version: 6.0
  • Getestet bis WP-Version: 6.5
  • PHP-Version: 8.0
  • Kompatible Themes: alle
  • Erforderliche Plugins: keine
  • Mitwirkende: Joerg Martin