Gabarit de hook pour la section du plugin Discourse "Join Discussion Link"?

Je vois où je peux changer le texte du lien lui-même lorsque l’option « Lien vers les commentaires sans les afficher » est sélectionnée, mais y a-t-il un moyen d’ajouter du texte/html au-dessus/en dessous de ce lien ? Un peu comme le filtre discourse_replies_html mais pour modifier ce qui se trouve à l’intérieur de la div .wpdc-join-discussion et où le lien Rejoindre la discussion irait là-dedans.

Salut Kayla, il n’y a actuellement aucun filtre ou modèle pour modifier le HTML dans la div wpdc-join-discussion. Pourrais-tu partager le résultat souhaité, c’est-à-dire quel HTML aimerais-tu obtenir ? Je verrai si je peux ajouter un filtre pour prendre en charge ton cas d’utilisation (et peut-être d’autres).

Salut Angus,

Le cas d’utilisation concerne le même site Web que

donc il y a des commentaires privés Discourse aux côtés des commentaires publics Wordpress sur un site utilisant un thème classique. J’aimerais pouvoir ajouter un titre et une explication textuelle au-dessus du lien « Rejoindre la discussion » pour le contexte/l’expérience utilisateur. Je suis capable de le simuler visuellement avec une zone de widget par défaut du thème qui apparaît après l’entrée du message et beaucoup de CSS, mais ce n’est pas idéal en termes de structure de document (dans ce cas, le widget est récupéré comme faisant partie de l’article en mode lecture, tandis que la div .wpdc-join-discussion réelle ne l’est pas). Je pourrais créer une nouvelle zone de widget qui se trouve à l’extérieur de la couche de l’article, mais cette personnalisation appartient logiquement à l’intérieur de la div .wpdc-join-discussion avec le lien « Rejoindre la discussion ».

Ok, merci, j’examinerai la prise en charge de ce cas d’utilisation dans la prochaine version.

1 « J'aime »

Merci de votre considération ! Je préférerais une solution ouverte comme discourse_replies_html afin d’avoir la flexibilité d’ajouter une “enveloppe” interne dans .wpdc-join-discussion ou tout autre élément nécessaire à l’avenir. J’espère que cela simplifiera également le développement du plugin (pas de nouveaux paramètres d’interface d’administration).

1 « J'aime »

@Kayla Il sera bientôt temps de publier une autre version du plugin et je veux m’assurer que je réponds à votre besoin. Je pense ajouter un filtre wpdc_join_discussion_link_html ici

$link_html = '<div class="wpdc-join-discussion"><a class="wpdc-join-discussion-link" href="' . esc_url_raw( $discourse_permalink ) . '"' . $new_tab . '>' . esc_html( $link_text ) . '</a></div>';
$link_html = apply_filters( 'wpdc_join_discussion_link_html', $link_html, $comments_count, $post_id );
return $link_html;

Cela jouerait le même rôle que le filtre discourse_replies_html, mais pour le HTML du lien.

Est-ce que cela vous convient ?

Oui, je pense que oui. Juste pour être clair, parce que je n’ai qu’un niveau de connaissance PHP suffisant pour prendre un modèle/exemple et l’utiliser, je pourrais utiliser ce filtre comme ceci ?

function custom_discussion_link( $input ) {  
  ob_start();
  ?>
  <div class="wpdc-join-discussion">
    <div class="custom-wrapper-div">
      <h3>Heading</h3>
      <p>Explanation/context yada yada.</p>
      <?php echo '<a class="wpdc-join-discussion-link" href="' . esc_url_raw( $discourse_permalink ) . '"' . $new_tab . '>' . esc_html( $link_text ) . '</a>'; ?>
    </div>
  </div>
  <?php
  $link_html = ob_get_clean();
  return $link_html;
}
add_filter( 'wpdc_join_discussion_link_html', 'custom_discussion_link' );

J’espère que ce n’est pas trop ridiculement à côté de la plaque. :face_with_peeking_eye:

Ok, donc je pense que je devrai m’assurer que vous avez les variables que vous interpollez ici, ce qui est logique pour ce filtre, c’est-à-dire :

apply_filters( 'wpdc_join_discussion_link_html', $link_html, $discourse_permalink, $new_tab, $link_text )

Que vous utiliseriez ensuite comme ceci (notez le nombre d’arguments) :

function custom_discussion_link( $link_html, $discourse_permalink, $new_tab, $link_text) {  
  ob_start();
  ?>
  <div class="wpdc-join-discussion">
    <div class="custom-wrapper-div">
      <h3>Heading</h3>
      <p>Explanation/context yada yada.</p>
      <?php echo '<a class="wpdc-join-discussion-link" href="' . esc_url_raw( $discourse_permalink ) . '"' . $new_tab . '>' . esc_html( $link_text ) . '</a>'; ?>
    </div>
  </div>
  <?php
  $link_html = ob_get_clean();
  return $link_html;
}
add_filter( 'wpdc_join_discussion_link_html', 'custom_discussion_link', 10, 4 );

Ce nouveau filtre sera dans la prochaine version. Il y aura un léger retard dans la sortie en raison de certains problèmes logistiques, donc la prochaine version arrivera début octobre.

1 « J'aime »

Merci beaucoup ! Je surveillerai cette prochaine version. :partying_face:

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.