Discourse Publishing Link für benutzerdefinierten Beitragstyp verschwindet

Hallo,

Die Discourse-Veröffentlichungsfunktion erstellt zwar ein Thema für einen benutzerdefinierten Post-Typ, aber der Link erscheint nicht in wp-admin. Ich habe die WordPress-Datenbank unter post_meta überprüft, und der Schlüssel „discourse_permalink“ für diesen Beitrag existiert, aber aus irgendeinem Grund wird der Link nicht angezeigt.

Ich habe den benutzerdefinierten Post-Typ mit Meta Box erstellt. Dies scheint ein Problem speziell mit benutzerdefinierten Post-Typen zu sein. Die standardmäßigen WP-Beiträge funktionieren einwandfrei und zeigen den Link in wp-admin an.

Vielen Dank!

Jacob Hill

Hallo Jacob :slight_smile:

Könntest du ein paar Dinge für mich bestätigen?

  1. Ist dein benutzerdefinierter Beitragstyp in den WP Discourse „Publishing“-Einstellungen „Post Types to Publish“ ausgewählt?

  2. Wenn du sagst „der Link erscheint nicht im wp-admin“, meinst du, dass der Link hier nicht erscheint?

1 „Gefällt mir“

Hallo Angus! Ja zu beiden deiner Fragen.

Bezüglich Frage 2 verhält es sich so, als gäbe es keine Verknüpfung, und es erlaubt mir, einen neuen Beitrag zu veröffentlichen oder auf das Thema zu verlinken. Wenn ich veröffentliche oder verlinke, ist das Ergebnis dasselbe – die Benutzeroberfläche aus deinem Screenshot zeigt keine Verknüpfung an, obwohl sie in der DB unter post_meta für diesen Beitrag erscheint.

Danke für die Hilfe!

Ok, ich werde versuchen, dieses Problem später in dieser Woche nachzustellen.

In der Zwischenzeit wären PHP-Protokolle für Ihre Instanz hilfreich, wenn Sie diese teilen können. Schauen Sie sich auch die WP Discourse-Protokolle auf Hinweise an.

Hallo @angus, danke!

Ich habe weitere Nachforschungen zu diesem Problem angestellt, habe keine Lösung gefunden und es wurden keine Protokolle generiert, die ich finden konnte. Hier sind die Informationen:

Nachdem das Thema in Discourse veröffentlicht wurde, erscheint dies in der Datenbank für diesen Beitrag, was korrekt aussieht.

Das Thema erscheint in Discourse einwandfrei, aber die wp-admin-Beitrag-Bearbeitungsoberfläche verhält sich so, als wäre dies nie geschehen, obwohl die Einträge in der Datenbank vorhanden sind:

Wenn ich versuche, denselben Beitrag zu verknüpfen, werden die Datenbankeinträge aktualisiert und ich erhalte die folgende Meldung, aber nach einem Refresh wird keine Verknüpfung angezeigt:

Nach der Verknüpfung sieht die Datenbank so aus:

Ich bin mir nicht sicher, warum dies mit benutzerdefinierten Post-Typen nicht funktioniert. Wie gesagt, es funktioniert einwandfrei für die Standardbeiträge.

Ich hoffe, das hilft!

Jake

Hallo @angus, ich wollte mich nach einem Update hierzu erkundigen. :slight_smile: Danke!

Ich kann das im Moment nicht nachvollziehen. Könnten Sie mir die „Meta-Datei“ im WP Discourse-Protokollbereich senden?

Hallo @angus, kannst du mir sagen, wie ich die Metadatei für dich bekomme?

Etwas Interessantes, die Kommentare werden im Frontend angezeigt, daher funktioniert der Link, der in der Datenbank erscheint, jedoch wird er nicht im wp-Admin angezeigt.

Wenn Sie die Protokolle herunterladen, enthält der gezippte Ordner die Metadatendatei. Sie können sie mir hier per PM senden.

Sind Sie sicher, dass es keine Protokolle für Ihre WordPress-Instanz im Allgemeinen gibt? Mein Gefühl sagt mir, dass eine Art Ausnahme auftritt, die verhindert, dass die Sidebar-Logik ordnungsgemäß funktioniert. Könnten Sie das bitte für mich versuchen:

  1. Wenn Sie einen Beitrag bearbeiten, bei dem das Problem auftritt
  2. Öffnen Sie die Browserkonsole (Anleitungen für verschiedene Browser)
  3. Laden Sie die Seite neu und machen Sie einen Screenshot von allen Protokollen, die in der Browserkonsole erscheinen.

Hallo @angus, es tut mir leid wegen der Verzögerung. Ich dachte, du sprichst über die Logs in Discourse, jetzt merke ich, dass du die Logs des WordPress-Plugins meinst. :slight_smile:

Ich habe dir die Dateien geschickt! Ich habe tatsächlich getestet, alle Plugins außer den unten genannten zu deaktivieren und auch zum 2023er Theme zurückzukehren, und das gleiche Problem besteht weiterhin. Keine Logs, die sich auf dieses Problem beziehen, wie zuvor.

Es scheint ein Problem mit dem Custom Post Type zu sein, vielleicht spezifisch für den CPT, der von MetaBox erstellt wird.

Ihr Problem liegt nicht beim WP Discourse Plugin. Sie müssen die Unterstützung für custom-fields in dem Code aktivieren, der die von Ihnen verwendeten Meta Box Custom Post Types registriert. Die WP Discourse-Seitenleiste funktioniert dann wie erwartet.

your_prefix_register_post_type() {
  ...
  $args = [
     ...
     'supports' => ['title', 'editor', 'thumbnail', 'custom-fields']
  ]
}
2 „Gefällt mir“

Hallo @angus, das hat funktioniert, vielen Dank!! Ich habe das Kästchen „Benutzerdefinierte Felder“ in den Meta Box CPT-Einstellungen angekreuzt, und jetzt wird der Link im wp-admin-Editor angezeigt!

Vielen Dank für die Hilfe!

1 „Gefällt mir“

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