Wie platziere ich Discourse-Kommentare an einer anderen Stelle als dem Standardstandort?

Ich passe eine WordPress-Website an und möchte in einem benutzerdefinierten Bereich im HTML einen Link zum Discourse-Thread für einen bestimmten Beitrag einfügen.

(Details: Ich passe eine LearnDash-Kurseite an, und der LearnDash-„Focus Mode

2 „Gefällt mir“

Schauen Sie sich den Abschnitt „Anzeigen der Kommentartemplate mit dem Timber-Theme" unter WP Discourse plugin tips and tricks an.

3 „Gefällt mir“

Danke… aber das scheint etwas veraltet zu sein. Der referenzierte Pfad:

WPDISCOURSE_PATH . 'templates/comments.php'

…scheint in meiner Installation von wp-discourse keinem Pfad zu entsprechen.

1 „Gefällt mir“

Ich muss nicht einmal die Liste der Discourse-Kommentare laden; mir würde ein Link zum Discourse-Thread reichen. Aber ich kann nicht herausfinden, wie man mit dem wp-discourse-Code an diesen Link kommt :-/

Ich habe das so gemacht, indem ich einfach auf die Postmeta verwiesen habe, ohne WP-Discourse-Code zu verwenden.

Ich habe es nie geschafft, irgendetwas zum Laufen zu bringen, das das Auflisten von Kommentaren beinhaltet… Alle Funktionen, die ich finden konnte, scheinen HTML mit einer Menge {Platzhaltern} zurückgeben zu wollen :confused:

    $discuss_url = get_post_meta($post_id, 'discourse_permalink', true);
    $comment_count = get_post_meta($post_id, 'discourse_comments_count', true);
    if($discuss_url) {
        ?>
            <div class="lac-lesson-discuss">
                <a href="<?php echo $discuss_url ?>" target="lac_discuss">
                    💬 Dazu diskutieren! (<?php echo $comment_count ?> Kommentare)
                </a>
            </div>
        <?php
    }
4 „Gefällt mir“

Wow, 7 Jahre seit deinem letzten Beitrag. Willkommen zurück, @avdi! Vielleicht kann @simon morgen Rat geben.

3 „Gefällt mir“

Du hast recht. Dieser Ansatz funktioniert nicht mehr. Ich denke, ich kann eine Hilfsfunktion zum Plugin hinzufügen, um es einfacher zu machen, die Kommentare außerhalb des WordPress-Kommentarbereichs anzuzeigen. Ich muss innerhalb der nächsten paar Tage ein kleines Update für das Plugin vornehmen und werde versuchen, eine display_discourse_comments-Funktion in das Update aufzunehmen. Ich gebe dir Bescheid, sobald es verfügbar ist.

3 „Gefällt mir“

Ich habe eine statische Hilfsfunktion zum Plugin hinzugefügt, die verwendet werden kann, um Kommentare anzuzeigen, ohne das Discourse-Kommentartemplate zu laden. Die Funktion finden Sie hier: get_discourse_comments. Sie erfordert, dass Sie die post_id des WordPress-Beitrags angeben, für den die Kommentare angezeigt werden sollen. Hier ist ein einfaches Beispiel für die Verwendung:

<?php
use WPDiscourse\Utilities\Utilities as DiscourseUtilities;
$discourse_comments = DiscourseUtilities::get_discourse_comments( 859 );
echo $discourse_comments;

Die Kommentare werden genau so angezeigt, wie sie auch erscheinen, wenn Sie die Option „Discourse-Kommentare aktivieren/Kommentare anzeigen“ auswählen (zu finden auf der Registerkarte „Kommentareinstellungen“ des Plugins). Wenn diese Funktion verwendet wird, wird der Wert dieser Einstellung ignoriert, alle anderen Einstellungen auf dieser Seite werden jedoch beachtet.

2 „Gefällt mir“