Support » Allgemeine Fragen » Unterfunktion in code snippets

  • Die snippets sind eine tolle Hilfe!

    Frage: Kann ich in einem snippet auch eine Unterfunktion aufrufen, die bereits vorhanden ist, z.B.

    function geht_gut (){
    $out=’mir gehts gut!‘;
    return $out;
    }
    add shortcode …

    function world (){
    $out=’Hello World … ‚;
    $out=$out . geht_gut();
    return $out;
    }
    add shortcode…

    Beide Funktionen sollen natürlich im Dokument getrennt aufrufbar sein, z.B.

    Hello World [snippet_geht_gut]

    oder
    [snippet_world]

    Die Seite, für die ich Hilfe brauche: [Anmelden, um den Link zu sehen]

Ansicht von 2 Antworten - 1 bis 2 (von insgesamt 2)
  • Moderator Bego Mario Garde

    (@pixolin)

    Zu Shortcodes habe ich vor einer ganzen Weile mal einen langen Aufsatz geschrieben, den du hier nachlesen kannst:

    Mfg mit freundlichen Grüßen

    Kurz gesagt kannst du mit add_shortcode( 'shortcode', 'shortcode_funktion' ); einen [shortcode] hinzufügen, bei dem WordPress die shortcode_funktion() ausführt. Dabei darf die Shortcode-Funktion immer nur einen Wert zurückgeben (return), nicht ausgeben (echo).

    Möchtest du die Funktion

    function mir_gehts_gut (){
    $out='mir geht\'s gut!';
    return $out;
    }

    als Shortcode verwenden, reicht also add_shortcode( 'geht_gut', 'mir_gehts_gut' );, um den Shortcode [geht_gut] zu definieren, der im Frontend als `mir geht’s
    gut!ausgegeben wird. Schwieriger wird es nur, wenn du auch noch Attribute im Shortcode verwenden willst, z.B. um mit[geht_gut name=“Torsten“]die Zeichenkette "Torsten, mir geht's gut! auszugeben. Aber bevor ich das jetzt wieder im Detail erkläre (und du es vielleicht gar nicht benötigst), lies bitte den oben genannten Beitrag.

    Shortcodes sind seit der Einführung des Block-Editors nicht mehr ganz zeitgemäß. Mit einem Plugin wie Block Lab kannst du auch eigene Blöcke erstellen. Die wirklich gut gemachte Anleitung macht es auch für Anfänger wie mich einfach, rasch einen eigenen Block aufzusetzen. (Das mit dem Anfänger bezieht sich auf die Programmierung von Blöcken. 😉 )

    war nur ein Beispiel …
    Ich probiere mal Block Lab

Ansicht von 2 Antworten - 1 bis 2 (von insgesamt 2)