Bilder über Beschreibung suchen

  • Hallo,

    ich will eine Funktion programmieren, mit der man Bilder über Stichworte, die z.B. in der Beschreibung stehen, ausgelesen werden sollen. Man gibt ein einer Stelle per shortcode das Suchwort ein, und erhält alle Bilder die dieses Wort in der Beschreibung beinhalten. Habe schon etwas gesucht, aber das einzige was ich immer finde ist die Beschreibung zu einem Bild auslesen. Ich will aber das genau umgekehrte. Hat jeman eine Idee wie das gehen würde?

    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

  • Danke für den Tipp. Habe es mir mal angeschaut, aber so ganz schlau geworden bin ich daraus nicht. Es gibt darin nur "where", aber der vordere Teil "select ..." fehlt.

  • Das kommt, weil das ein Filter ist.

    add_filter( 'posts_clauses', array( $this, 'posts_clauses' ), 20 );

    Und da wird halt nur mit WHERE die query geändert.

  • so ganz blicke ich das mit den Filtern nicht. Im Code des Plugins steht diese Abfrage:
    $pieces['where'] .= $wpdb->prepare( " OR (tter.slug LIKE %s) OR (ttax.description LIKE %s) OR (tter.name LIKE %s)", $like, $like, $like );

    daraus resultierend wäre im Prinzip das was ich brauche:
    $sql = $wpdb->prepare( " OR (ttax.description LIKE %s) ", $like);
    Wie binde ich das aber in einem Filter ein, um das entsprechende Ergebnis zu erhalten?

  • Zitat

    Du hast doch schon einen: posts_clause.


    Wo?

    Zitat

    Und eine SQL-Abfrage, die mit OR beginnt, wird nicht klappen


    Ok, muss natürlich AND lauten :)

  • Der ist "eingebaut".

    Füge mal in die functions.php Deines Themes ein:

    Und dann rufe mal "Seiten" im Backend auf, und Du wirst sehen, dass über Seiten jede Menge Kram ausgegeben wird.
    Und dieser Filter gibt Dir halt die Möglichkeit, zB $clauses['where'] zu ändern

  • Die "Beschreibung" in der Mediathek ist im jeweiligen [FONT=courier new]post_content[/FONT] gespeichert, hier ein einfaches Beispiel zum Weiterbasteln:

    Code
    [attachments_by_description b3317133_suchwort="test"]
  • Vielen lieben Dank für das Bsp b3317133. Das hilft mir schon weiter. Steht alt & caption (um darüber auch Keywords zu suchen) auch im post_content bzw. würde sich bei der Abfrage etwas ändern?

    Danke

    EDIT:
    Ok, hab etwas experimentiert. Die caption steht in post_excerpt, aber wo steht alt?

    Einmal editiert, zuletzt von joeee (4. März 2018 um 15:08)

Jetzt mitmachen!

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