Benutzerdefiniertes Feld leer?

  • March 1, 2015 at 12:18 #13308
    gnrmarcel
    Member

    Hallo,

    ich möchte das Plugin in mein Post Template einbauen, dass ich nicht immer einen Shortcode eingeben muss.
    Dazu möchte ich ein benutzerdefiniertes Feld anlegen, wo ich die ASIN eines produkt angebe und diese Variable dann autom. in das Template übernommen wird.

    Sollte ja laut http://www.wp-amazon-plugin.com/usage/ kein problem darstellen.

    Gibt es aber die Möglichkeit, produkte zu definieren, die angezeigt werden, wenn man das benutzerdefinierte Feld nicht ausgefüllt hat?

    Ich möchte, dass auf jeden Fall ein produkt angezeigt wird, entweder vordefinierte allgemeine oder wenn ich selbst die ASIN hinterlege.

    Geht das?

    March 2, 2015 at 20:39 #13311
    Timo
    Member

    Wenn du sowieso dein Seitentemplate selbst entwickelst, steht es dir ja völlig frei. Du kannst ja erst prüfen, ob das custom field einen Wert enthält und wenn ja, diesen verwenden. Andernfalls könntest du z.B. ein zufälliges Produkt aus einer Collection anzeigen, indem du die Funktion “asa_get_collection” verwendest.

    $cf = get_post_meta($post->ID, 'ASIN', true);
    
    if (!empty($cf)) {
        asa_item($cf, 'default'); 
    } else {
        do_shortcode('[asa_collection items=1, type=random]my_collection[/asa_collection]');
    }

    Wäre das eine Lösung für dich?

    March 5, 2015 at 12:05 #13321
    gnrmarcel
    Member

    Danke.

    Ich werde es mal testen.
    Wenn es klappt, würde es dem entsprechen, was ich suche 🙂

    Btw, wie geht es mit der neuen Version voran?

    March 5, 2015 at 13:03 #13322
    gnrmarcel
    Member

    Hui,

    könntest Du mir vielleicht nochmal helfen?

    Ich nutze das http://www.advancedcustomfields.com/ Plugin und habe ein Benutzerd. Feld namens ASIN angelegt.
    Was muss der Code angepasst werden, dass der Wert aus dem Feld ausgelesen wird?

    March 5, 2015 at 13:03 #13323
    gnrmarcel
    Member

    Hui,

    könntest Du mir vielleicht nochmal helfen?

    Ich nutze das http://www.advancedcustomfields.com/ Plugin und habe ein Benutzerd. Feld namens ASIN angelegt.
    Was muss der Code angepasst werden, dass der Wert aus dem Feld ausgelesen wird?

    March 5, 2015 at 19:48 #13324
    Timo
    Member

    Wenn das Feld wirklich “ASIN” heißt, sollte mein Beispiel passen. Wenn es anders heißt (vielleicht “asin”?), ändere einfach den String “ASIN” im Beispiel ab.

    March 6, 2015 at 07:12 #13325
    gnrmarcel
    Member

    Hallo Timo,

    Danke für dein Feedback.
    Es klappt soweit alles aber nur, wenn in ASIN was eingegeben ist.

    Lasse ich das Feld leer, wird kein Artikel aus der Collection angezeigt.
    Die Collection heißt Spiele und das habe ich im Code entsprechend abgeändert.

    Packe ich den Code /Befehl rein, der rein die Collection anzeigt, klappt es.

    Nur leider nicht die Wenn Bedingung in deinem Code :/

    March 19, 2015 at 19:09 #13339
    Timo
    Keymaster

    Ok, ich glaube es sollte heißen “echo do_shortcode(…”

    Also so:

    $cf = get_post_meta($post->ID, 'ASIN', true);
    
    if (!empty($cf)) {
        asa_item($cf, 'default'); 
    } else {
        echo do_shortcode('[asa_collection items=1, type=random]my_collection[/asa_collection]');
    }
    March 19, 2015 at 20:00 #13342
    gnrmarcel
    Member

    Hallo,

    leider nicht ganz.

    Es wird

    [asa_collection items=1, type=random]spiele[/asa_collection]

    auf der Seite ausgegeben als reiner text ausgegeben.

    April 19, 2015 at 08:10 #13366
    gnrmarcel
    Member

    Timo, könntest Du mir vielleicht nochmal helfen?
    Wäre echt super, wenn wir das hinbekommen würden 🙂

    April 24, 2015 at 11:04 #13368
    Timo
    Member

    Sorry für die späte Rückmeldung. Schreib mir doch bitte über das Kontakt-Formular, damit ich mir das evtl. mal direkt auf deiner Seite ansehen kann.

    May 28, 2015 at 21:22 #13388
    gnrmarcel
    Member

    Hi Timo,
    hatte dir gleich via Kontaktformular geschrieben aber nun wieder keine Rückantwort bekommen 🙁

You must be logged in to reply to this topic.