Ich hoffe wirklich, ich habe ein einfaches Problem hier vor mir, da es mich irgendwie an die Wand treibt.
Kurzgeschichte: Das Senden eines einfachen Formulars am vorderen Ende der Site führt zu einer 302 Found
Umleitung, $_POST
die $_POST
Daten $_POST
werden.
Szenario:
my-edit-template.php
) und wenden Sie sie auf Bearbeiten an my-edit-template.php:
Jetzt, wenn ich das Formular $_POST
, bekomme ich zwei Anfragen auf die gleiche Seite, zuerst den POST
, mit den intakten Formulardaten, und zweitens ein GET
(Statuscode 200
), offensichtlich befreit von $_POST
global, oder irgendetwas Nützliches mir.
Ich bin sicher, das ist eine totale Aufsicht, aber ich bin ratlos; völlig verwirrt.
Ich habe es versucht:
POST
über Javascript / XHR
Hilfe?
Es tut mir leid, wenn die Details spärlich sind, ich bin gerade in der class, aber ich werde später noch etwas relevantes besprechen.
Diese Frage ist ziemlich alt, aber die einzige, die für diese Art von Problem herauskam. Ich hatte es heute Nacht, verbrachte fast 4 Stunden damit, mich gegen die Wand zu schlagen – Plugins zu deaktivieren, Code hier und da zu kommentieren (und dies ist ein großes Multisite-Projekt mit vielen benutzerdefinierten functionen und Frontend-Formularen, benutzerdefinierten URLs und Vorlagen etc.). Das war ein Schmerz …
Ich werde es einfach hier lassen. Vielleicht spart es jemandem ein paar Stunden.
” Beim Erstellen von benutzerdefinierten Front-End-Formularen müssen Sie immer Ihre Eingabe / / etc-Namen mit Ihrem benutzerdefinierten Präfix voranstellen .”
Wenn Sie dies vergessen und mit der Benennung von Feldern beginnen, die Ihrer globalen Namenskonvention entsprechen, können Sie eine Auswahl erstellen, die Ihre benutzerdefinierte Taxonomie anzeigt, und sie so benennen, wie eine benutzerdefinierte Taxonomie selbst benannt wird. Wenn Sie “Submit” drücken, empfängt WordPress Ihre $ _POST-Daten, analysiert sie, “versteht” diesen Namen als ihr registriertes $ query_var und transformiert die Anfrage, indem sie $ query_var hinzufügt. Natürlich führt dies zu einer Umleitung, die Ihre $ _POST-Daten löscht und verhindert, dass das Formular das tut, was es tun soll.
Mit diesem Code ist nichts falsch. Ich habe es gerade auf einer lokalen Installation gemacht und es hat gut funktioniert, genau wie Sie es erwarten würden.
Suchen Sie nach in Konflikt stehenden Plugins.