Eingebettete base64 Bilder auslesen und in wp speichern

  • Hallo, ich bin zur Zeit auf der Suche nach einem Plugin oder Quellcode um eingebettete base64 Bilder automatisch auszulesen. Diese sollen dann in wordpress hochgeladen werden und in dem Post / auf der Page soll der Code so geändert werden das das Bild aus wordpress genommen wird.
    Ich war lange auf der Suche und habe eine Seite gefunden die vielleicht die Lösung meines Problems ist, nur leider gibt der Author nicht an WO die Codeschnipsel hin sollen, bzw wo die PHP Dateien hin sollen und wie sie aufgerufen werden. Da Fehlt es überall an Informationen und ich weiß leider nicht weiter. Die Seite zum Artikel ist:

    https://rschu.me/convert-and-re…s-in-wordpress/

    Kann mir vielleicht einer Weiterhelfen?

    Lg polest

    • 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)

    Mehr erfahren

  • Das sind Bilder die aus Text bestehen, also die werden in HTML per Base64 decodiert und angezeigt. Dabei besteht so ein codiertes Base64 Bild mal eben aus ca 60.000 Zeichen. Sieht im Code natürlich mega toll aus wenn da 5 Bilder nebeneinander stehen. Hier ein Code Beispiel:

    HTML
    <img src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/4RD6RXhpZgAATU0AKgAAAAgABAE7AAIAAAAQAAAISodpAAQAAAABAAAIWpydAAEAAAAgAAAQ0uocAAcAAAgMAAAAPgAAAAAc6gAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...">

    Wie gesagt, das sind insgesamt 60.000 Zeichen. Ich will das mein Wordpress diese Bilder erkennt, sie in den Media Pool lädt und den Code austauscht. Es gibt schon andere Plugins die normale Bilder auslesen und das gleiche machen was ich will aber bei diesen Base64 Bildern ist es schwer irgendwas zu finden.

  • Der Code von der Seite, die Du oben verlink hast, ist für die Konvertierung innerhalb von Wordpress gedacht.

    Wenn Du die Bilder von externen Seiten einlesen willst, gehts da möglicherweise mit einem der Plugins, die normale Bilder auslesen, wenn es entsprechend angepaßt wird.

    Gruß
    Ingo

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

  • Wo sind diese Base64-Bilder die exportiert werden sollen? Auf dem eigenen Blog, oder auf anderen Webseiten?

    Wenn die Bilder auf anderen Webseiten liegen, hilft dir auch kein Wordpress-Plugin.

    Wenn die Bilder auf deinem eigenen Blog liegen, wie sind sie dann überhaupt da hin gekommen, und warum nicht einfach einmal alle aus der DB exportieren und konvertieren?

    PS:

    Zitat

    Schwierig weil ja der Sinn der Codierung darin besteht genau das zu verhindern.


    Sinn ist es eher, dass der Browser nicht für jedes 20x20px-Bild einen eigenen Request an den Server senden muss. Die Daten können einfach inline per Text mit dem normalen HTML oder CSS geschickt werden, was die Ladezeit verringert. Und natürlich kann man so Bilder senden, auch wenn man eigentlich nur Text senden darf. z.B. wenn man keine Upload-Rechte im Blog hat, oder keinen Anhang an die Mail hängen will.

    Einmal editiert, zuletzt von Trunk (11. November 2015 um 08:59)

  • Die Base64-Bilder sind auf dem eigenen Blog.
    Die Bilder sind von uns Manuell von einem Typo3 Blog eingefügt worden. Also wir kopieren die Typo3 Seite und fügen diese im WP Editor ein. Bilder die auf den alten Typo3 Server mit htpasswd / htaccess geschützt waren, bekomme ich schon hin, also das diese erkannt und in den WP Media Pool gespeichert und das der Code automatisch auf der entsprechenden Seite umgeschrieben wird. Dafür gibt es ja plugins aber nicht für mein jeziges Problem. Das sind nämlich tausende Seiten die überführt werden müssen und mal sind es echt Bilder und mal Base64-Bilder, deshalb bräuchte ich am besten ein Plugin das alle vorhandenen Seiten / Pages durchsucht, die Base64-Bilder erkennt und diese dann wie die normalen Bilder in den Media Pool speichert und den code auf der Page ändert.
    Es ist halt zu aufwendig tausende Seiten nach base64 Bildern zu durchsuchen und diese dann manuell abzuspeichern..

    lg polest

  • https://interconnectit.com/products/searc…ress-databases/ hat eine Regex Option.

    Suche nach:

    Code
    <img\s{1,}src="data:image/(jpeg|img|jpg|png);base64,.*?">

    Und ersetze durch Nichts.

    Der Regex muss eventuell um weitere Mime Types ergänzt werden.

    Probleme kann es geben, falls das Base64 Bild in einem serialisierten String steht, weil eine 0 als Länge (gelöscht) soweit ich weiß zu Fehlinterpretationen führt (wenn nichts da ist braucht es ja auch nicht in den String).

    In jedem Fall einen Trockenlauf mit der Software machen und die Treffer stichpunktartig prüfen. Mein Regex ist zwar lazy aber eine Prüfung kann nicht schaden.

    Vorher unbedingt eine Sicherung der Datenbank durchführen!
    Habe ich schon erwähnt das Ihr ein Backup der Datenbank machen sollt bevor Ihr mit der Operation beginnt?
    Ach ja ganz wichtig - Sicherung der Datenbank nicht vergessen!
    Und was ich noch sagen wollte, Sicherung der Datenbank ....

    WordPress ist "frei" wie in Freiheit es zu nutzen, aber nicht im Sinne von Freibier. Wer also glaubt man bekommt rund um WordPress alles kostenlos, der irrt. Hilfe ist ein Geschenk für das man sich bedankt, dafür gibt es den 'Gefällt mir' Button. Wer das nicht kann und sich selbst nicht zu helfen weiss, muss sich bezahlte Unterstützung suchen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!