Ich arbeite an einer Bildungswebsite, die Videoinhalte produziert und statt der WordPress-Kommentare ein BBPress-Forum zur Diskussion verwendet. So funktioniert das:
Ich habe einen Haken bei wp_insert_post
, das ein neues BBPress- topic
wenn ein neuer video
erstellt wird, und speichert diese neue topic_id
in einem _comment_topic_id
Meta-Feld.
In meiner single-video.php
Vorlage, in der das Video angezeigt wird, verwende ich den BBPress [bbp-single-topic id=$topic_id]
Shortcode [bbp-single-topic id=$topic_id]
, um den Themen-Thread und das Antwortformular für Personen anzuzeigen, damit Kommentare [bbp-single-topic id=$topic_id]
.
All das funktioniert großartig! Ich habe nur ein Problem – die “Subscribe” -function von BBPress funktioniert nicht, wenn Leute über die Video-Single-Seite antworten. Die Antwort wird gut geschrieben, aber abonnierte Benutzer erhalten keine Benachrichtigung. Wenn Sie nicht vertraut sind – wenn ein Benutzer einen Thread abonniert, erhält er eine E-Mail, sobald jemand auf den Thread antwortet. Dies funktioniert immer noch gut, wenn jemand eine Antwort über die eigentliche Thread-Seite schreibt – es ist nur ein Problem mit dem Thread, der über den Shortcode auf der Video-Einzelseite eingebettet ist.
Ich habe versucht, in den core zu graben und ich habe so weit zu entdecken, dass die bbp_new_reply
Aktion nicht feuert – BBPress verwendet eine function namens bbp_notify_topic_subscribers
in bbp_new_reply
gehakt, um die Benachrichtigungen zu senden und diese function läuft überhaupt nicht, wenn eine Antwort erfolgt über die Video-Einzelseite.
Es scheint, dass BBPress einige versteckte Eingaben verwendet, um zu bestimmen, welche Aktionen ausgeführt werden sollen, nachdem eine Antwort gesendet wurde, aber diese scheinen korrekt über den Shortcode eingebunden zu sein. Diese erscheinen am unteren Rand des Themas Single Form (das funktioniert);
Und diese erscheinen am Ende des Video-Einzelformulars (das nicht)
Ich bin ratlos, wie ich dieses Problem weiter beheben kann und wirklich Hilfe gebrauchen kann. BBPress hat alle Arten von Seitentyp- / Post-Typ-Überprüfungen im core, den ich mich ducking und weben, aber dieser hat mich ratlos gemacht. Ich vermute, das Problem ist, dass SOMEWHERE den Post-Typ des aktuellen Beitrags überprüft, es ist ein video
statt eines topic
und bailing, bevor die Aktion ausgeführt wird, aber ich habe keine Ahnung, wie oder wo Sie das finden und wie Sie es patch.
Vielen Dank!
Es stellte sich heraus, dass jede Spur, die ich verfolgte, ein Ablenkungsmanöver war.
Ich hatte eine andere function, die in wp_insert_post
war und dich zurück zur Video-Einzelseite führte, anstatt dich auf die Thread-Einzelseite zu schicken, wenn du deine Antwort VON der Video-Einzelseite gepostet hast. Es stellte sich heraus, dass die Weiterleitung die Ausführung traf und beendete, bevor die Aktionen von bbp_new_reply
erlaubt wurden zu feuern.
Ich änderte diese function, um auch in bbp_new_reply
und änderte seine Priorität auf 11, so dass es nach den nativen Aktionen laufen würde. Großartig arbeiten!