Pods: Fehler mit WP 4.7.1 PDF Thumbnails {@_src}-Handlern geht durch pods_image_url fügt Bild-Suffix an

Erstellt am 9. März 2017  ·  26Kommentare  ·  Quelle: pods-framework/pods

Ich habe ein Pod-Setup mit einem Datei- / Bild- / Videofeld.

Wenn ein Benutzer Inhalt im CPT hinzufügt und eine PDF-Datei in dieses Feld hochlädt, zeigt die generierte URL eine .jpg-Erweiterung in der Datei anstelle einer .PDF-Datei an (so dass beim Anklicken die jpg-Miniaturansicht im Browser angezeigt wird, anstatt zu verlinken zum PDF)

Beispiel: Die Datei, die ich anzeigen möchte, ist
DMB-170119_17-000154-01-08.pdf

aber die generierte URL endet mit
DMB-170119_17-000154-01-08-pdf.jpg

Dies geschieht nur für PDFs, die innerhalb von WP 4.7 hochgeladen wurden, bei denen ein Thumbnail generiert wurde. PDFs, die vor Version 4.7 hochgeladen wurden (die immer noch das allgemeine graue WP-Symbol für eine PDF-Datei aufweisen) haben die richtige .pdf-Dateierweiterung in der URL.

TemplateMagic Tags Reproduced Bug

Alle 26 Kommentare

Screenshots vergessen. Hier ist mein Pod-Feld-Setup, meine Pod-Vorlage und einige der Ausgaben.

voila_capture 2017-03-08_05-52-35_pm2
voila_capture 2017-03-08_05-53-35_pm
voila_capture 2017-03-08_05-59-21_pm

Anscheinend brauchen wir einen besseren Handler für Nicht-Bild-Links zu Anhangsdateien.

https://github.com/pods-framework/pods/blob/2.x/classes/Pods.php#L1452

Im Moment durchlaufen _src und _src.{size} die Funktion pods_image_url() .

Ich will kein Schädling sein, ich frage mich nur, ob sich da etwas bewegt. Ich bin selbst kein Plugin-Entwickler, wurde nur aus den WP-Foren hierher verwiesen, um etwas Aufmerksamkeit darauf zu bekommen.

Keine Fortschritte bei der Fehlerbehebung, wir haben hart daran gearbeitet, Pods 2.7 für die Beta vorzubereiten. Ich werde dies meiner Liste hinzufügen, um in den kommenden Tagen darauf zurückzukommen, wenn ich einen freien Moment habe.

@portlandian Sie können möglicherweise den Workaround in #3376 verwenden, indem Sie die ID der angehängten Datei an eine Funktion übergeben und https://codex.wordpress.org/Function_Reference/wp_get_attachment_url dagegen verwenden, dh:

{@test_result_pdf.ID,wp_get_attachment_url}

@portlandian
Ich frage mich nur, warum Sie nicht einfach {@test_result_pdf} ?
Dies gibt die PDF-URL zurück, wenn ich sie hier teste. Es ist nicht erforderlich, ._src oder irgendetwas anzuhängen.

Begriffe wie full oder large beziehen sich alle auf Bildtypen, sie werden nur angezeigt, weil es sich um ein allgemeines Pods-Dateifeld handelt. Sie benötigen sie nicht für andere Feldtypen als Bilder.

@sc0ttkclark
Vielen Dank für eine zeitnahe Antwort und ich freue mich auf 2.7

@jimtrue
Vielen Dank für die Problemumgehung. Ich war mir dessen nicht bewusst. Zum Glück brauche ich sie nicht, da...

@JoryHogeveen
Nur weil ich nicht wusste, dass das funktioniert. Ich beziehe mich ausschließlich auf http://pods.io/docs/build/using-magic-tags/, wenn ich die Vorlagen verwende, und habe das im Abschnitt über die Tags zum Abrufen von Datei-URLs nie gesehen. Wenn es da ist und ich es übersehen habe, könnte es eine gute Idee sein, meine schlechten, aber vielleicht nicht-Bilddateien in diesem Abschnitt zu behandeln. Ich habe meine Vorlage geändert, um dieses Tag zu verwenden, und jetzt funktioniert es. Problem gelöst.

Ihr Jungs seid toll!

@portlandian Schön zu hören, dass es funktioniert!

Vielleicht ist es eine gute Idee, in diesem Abschnitt Nicht-Bilddateien zu behandeln.

@jimtrue Könnte in der Tat eine gute Idee sein! :)

Guter Punkt, aber ja, man könnte meinen, @_src würde nur die Datei-URL

Speziell aus Scotts Notizen:
Anscheinend brauchen wir einen besseren Handler für Nicht-Bild-Links zu Anhangsdateien.

https://github.com/pods-framework/pods/blob/2.x/classes/Pods.php#L1452

Im Moment durchlaufen _src und _src.{size} die Funktion pods_image_url().

@jimtrue
Sehr guter Punkt zu den einzelnen Schleifen. #4111 behebt dies.

@sc0ttkclark Hinweis: Ich habe die PR gegen 2.x gemacht.

Ach und @jimtrue .
Kommentar in der PR (könnte etwas für die Doku sein)

Bei Verwendung von Shortcodes mit PDF-Anhängen liefert ._src seit WP 4.7 ein Bild zurück.
Mit diesem Fix wird die PDF-URL zurückgegeben.
Das Abrufen von PDF-generierten Bildern (WP 4.7)-Bildern ist weiterhin mit ._src.image_size oder ._img möglich.

Bemerkt!! Ich werde sie sowohl zu alten als auch zu neuen Dokumenten hinzufügen

Dies wurde ab #4111 behoben

@JoryHogeveen @pglewis Leider ist das immer noch kaputt. Ich kann bestätigen, dass {@_src} immer noch den Link zu den neu generierten Miniaturansichten für PDFs bereitstellt.

Bitte überprüfen Sie die Konversation in diesem Ticket von: https://github.com/pods-framework/pods/issues/4580#issuecomment -354883021 abwärts.

Dies scheint damit zusammenzuhängen, dass der Host Miniaturansichten von PDFs erstellt. Mein Local von Flywheel hat dies nicht getan, also war es richtig mit den PDF-Dateien verknüpft, aber auf WPEngine (die Miniaturansichten generiert) zeigt das {@_src}-Tag _nur_ auf das Bild-Miniaturbild, nicht auf das PDF. Sehr nervig.

@brian-milnes hat eine sehr gute Problemumgehung bereitgestellt, die direkt zum richtigen PDF führt. Vielleicht ist es also etwas in unserem Handler für _img und _src das Problem:

Wir haben einen Workaround mit
{<strong i="14">@ID</strong>,wp_get_attachment_url}

Wenn es sich um eine Umgebungssache handelt, sollten wir zunächst eine ähnliche Umgebung zum Replizieren erstellen.
Ich weiß, dass WP Engine zum Beispiel ein eigenes Must-Use-Plugin hat.
Können wir dazu eine Liste erstellen?

@JoryHogeveen Ich denke, das Problem könnte darin bestehen, dass wir immer noch den 'image'-Handler für {@_src} durchlaufen; Ich bin mir nicht sicher, warum WordPress die Miniaturansichten für ein PDF gegenüber dem PDF selbst bevorzugt, aber vielleicht ist dies einer der Fälle, in denen wir stattdessen ein {@_file}-Tag benötigen, wenn {@_src} durchgeleitet wird pods_image_url. Wir brauchen eine Möglichkeit, sie an die get_attachment_url weiterzuleiten.

Ich bin gut darin, eine Liste zu erstellen, weiß nur nicht, ob es sinnvoll ist, ein neues Tag nur für Dateianhänge zu erstellen (weil ich vermute, dass wir auch bei anderen Dateien darauf stoßen würden) oder wenn wir müssen _src {@_src} intelligenter machen.

Mein Bauchgefühl: {@_img}, _img und jede _src.size sollten die Miniaturansichten der Bilder zurückgeben. _src sollte immer die Datei-URL zurückgeben.

@sc0ttkclark Gedanken?

Oh und in der Testumgebung, ja, wir haben eine mit themer.pods.io oder wir können eine andere auf unserem pods.io WPEngine-Host einrichten, wenn das @JoryHogeveen hilft

Nun der richtige Link #4964 - ist auch ein gutes Beispiel!

hum jetzt scheint es, dass weder {@_src} noch {@permalink} in einem [each] funktionieren :/

@quasel Geben Sie Ihr Vorlagenbeispiel an? Ich mache das die ganze Zeit und habe gerade mehrere, die perfekt funktionieren.

Zur Bestätigung haben sich die Image-Handler in den letzten Versionen geändert. Ist das ein aktives Problem?
@quasel Haben Sie einen Schnelltest zur Verfügung?

Zur Bestätigung haben sich die Image-Handler in den letzten Versionen geändert. Ist das ein aktives Problem?
@quasel Haben Sie einen Schnelltest zur Verfügung?

Dies ist nach 2.7.22 immer noch ein Problem. Ich habe meinen Vorlagencode /w die Problemumgehung vorerst aktualisiert, aber es wird immer noch versucht, Miniaturansichten für PDFs zu verknüpfen.

Es wird jedoch immer noch versucht, Miniaturansichten für PDFs zu verknüpfen.

@zushiba Was meinst du mit "versuchen"? Können Sie einen Anwendungsfall mitteilen, der eine falsche Ausgabe wäre?

Es wird jedoch immer noch versucht, Miniaturansichten für PDFs zu verknüpfen.

@zushiba Was meinst du mit "versuchen"? Können Sie einen Anwendungsfall mitteilen, der eine falsche Ausgabe wäre?
Ich habe ein Feld zum Hochladen mehrerer Dateien, das von meinen Benutzern verwendet wird, um PDF-Dokumente hochzuladen, die dann über die folgende Vorlage auf einer Seite aufgelistet werden.

<h1>{@post_title}</h1>
<ul>
[if form_files]
[each form_files]
<li><a href="{@_src}">{@post_title}</a></li>
[/each]
[/if]
</ul>

Beim Hochladen von 2 PDFs heute stellte einer meiner Benutzer fest, dass beim Hochladen der PDF-Datei der resultierende Link auf der Seite zum JPG-Miniaturbild des PDFs führte, nicht zum eigentlichen PDF. Ich konnte bestätigen, dass die PDFs auf den Server hochgeladen wurden und in der Dashboard-Oberfläche des Pod-Elements mit der richtigen Datei verlinkt wurde, aber der Link selbst führte zum JPG-Miniaturbild.

Problem in #5854 behoben
Wenn Benutzer diesen Patch testen möchten, wäre das großartig!

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

tuanmh picture tuanmh  ·  5Kommentare

Ramoonus picture Ramoonus  ·  5Kommentare

Kpudlo picture Kpudlo  ·  4Kommentare

jcampbell05 picture jcampbell05  ·  5Kommentare

HmCody picture HmCody  ·  6Kommentare