JQuery/Ajax mit Wordpress nutzen um Bild nachzuladen

  • Hallo Zusammen,

    ich bin momentan dabei mir etwas in Wordpress zu Programmieren um Bilder per Jquery zu tauschen. Ich habe per Ajax versucht ein PHP File aufzurufen welche eine Funktion aufruft um den Bilderpfad aus Wordpress auzulesen um diesen zu ersetzen. Leider bekomme ich immer einen Internal Server Error 500 in changeTeamPic.php, allerdings ist in der error.log nichts neues drin.

    Das ganze soll dazu dienen das wenn man auf einen Namen klickt daneben das aktuelle Bild erscheint.

    hier wie folge meine Forgehensweise:


    dieses Script wird richtig aufgerufen:

    PHP
    $('a.fotomember').bind("click", function (event) {
            event.preventDefault();
            var id = $(this).attr("href");
            alert("Variable id gefüllt mit"+id);
            $.post("wp-content/themes/takeit/changeTeamPic.php", {id: id}, function (data) {
                alert("Variable data gefüllt mit"+data);
                $('.memberfoto').attr('src',data);
            });
        });

    in dem Script wird die Datei "changeTeamPic.php" aufgerufen und hier kommt dann auch der Fehler:

    PHP
    <?php
    include "functions.php";                      //wp-content/themes/takeit/functions.php geht auch nicht
    echo get_thumbnail_path();
    ?>

    durch "echo get_thumbnail_path()" wird folgende funktion aufgerufen:

    PHP
    function get_thumbnail_path(){
        $id = $_POST["id"];
        $path = get_the_post_thumbnail($id, 'full');
        return $path;
    }


    Habt ihr einen Tipp für mich?

    DANKE!!

    • 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

  • So ich hab noch etwas rausbekommen. Es scheint lediglich daran zu liegen das ich die functions.php nicht importieren kann, da dort Zeilen drin stehen die nur Wordpress versteht. Wie z.B. AddAction. Gibt es da eine andere Möglichkeit ? Bilder per Jquery auszutauschen?

    DANKE!

  • [COLOR=#000000]Hallo

    Warum definierst du nicht die funktion "get_thumbnail_path" nicht direkt in der changeTeamPic.php?
    Dann kannste die das laden der functions.php sparen.
    Oder verstehe ich da was falsch?

    LG, pixselig
    [/COLOR]

  • Hi,

    also die Funktion get_thumbnail_path holt sich die ID und übergibt das an die Wordpress Funktion get_the_post_thumbnail. Die kann nicht benutzt werden weil die Wordpressfunktionen an dieser stelle nicht geladen sind.

    Oder ich mach es viel zu kompliziert, evt gibt es da ja einen eigenen Wordpress "weg"

    Danke!

  • Ah ja.

    Du brauchst dazu aber nicht die functions.php sondern die wp-load.php.
    Auch bindest du die nicht via "include" sondern via "require" ein.

    Hoffe das hilft dir!

  • Perfekt danke pixselig!!

    Jetzt klappt das nachladen, zwar nur beim ersten mal... aber den Fehler finde ich sicher auch noch!

    Danke!

Jetzt mitmachen!

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