Kann ich einen Datensatz manuell in der wp postmeta-Tabelle manuell löschen?

Ich habe einen Fehler in den Metadaten für einen Post. Es hindert mich daran, einen neuen Wert aus dem Post selbst zu korrigieren oder hinzuzufügen.

Wenn ich in die Postmeta-database der database gehe und zu dem Eintrag für diese Post-ID gehe, kann ich den Fehler sehen.

Kann ich diesen ganzen Eintrag einfach in der Postmeta-Tabelle löschen? Es gibt kein anderes Post-Meta, um das Sie sich kümmern müssen.

Alternativ sehe ich die WordPress-function delete_post_meta() . Ich bin mir jedoch nicht sicher, wie ich das in functions.php und hookweise richtig anwenden soll.

Ich könnte einfach den gesamten Post aus dem Dashboard löschen und neu eingeben, aber ich denke, der Eintrag in der Postmeta-Tabelle für den alten Post wäre immer noch da, verwaist – oder?

Solutions Collecting From Web of "Kann ich einen Datensatz manuell in der wp postmeta-Tabelle manuell löschen?"

Es ist unklar, was die postmeta tatsächlich tut, so könnte es Ihre Website in vielerlei Hinsicht beeinflussen.
Im besten Fall wird nur das Feld / die Option gelöscht und der Benutzer muss es für diese bestimmte Seite erneut eingeben.
Im schlimmsten Fall könnte ein Seitenlayout geändert oder eine Mediendatei in Ihrer Medienbibliothek verwaist werden (vorausgesetzt, das Feld enthält eine Anhangs-ID). Ansonsten kann ich keinen Grund sehen, warum das Löschen einer Zeile in der Postmeta-Tabelle extrem schädlich wäre.

Wann immer ein Post gelöscht wird, löscht WordPress alle Post-Memos, die dieser Post-ID zugewiesen sind. Die function wp_delete_post() sagt …

Wenn der Post und die Seite gelöscht werden, wird auch alles gelöscht, was damit verbunden ist. Dies umfasst Kommentare, Post-Meta-Felder und Beziehungen zwischen den Post- und Taxonomie-Begriffen.

Die function delete_post_meta() kann fast überall ausgeführt werden, wo Core geladen wurde. Sie könnten es in einen init oder save_post Hook setzen und es einmal save_post und dann den functionsaufruf entfernen. Beispielsweise:

 function delete_somemeta() { // This will run every single time a page is loaded. delete_post_meta( $POST_ID, 'META_KEY_NAME' ); } 

Sie können dies zu Ihrer functions.php hinzufügen, laden Sie das Front-End Ihrer Website, dann entfernen Sie es und es wird effektiv das gleiche wie das Entfernen der Zeile aus der database tun.

Diese Art von function wird am häufigsten als bedingte Entfernung von save_post in save_post Hook angesehen, wenn save_post Daten gespeichert werden .