So erstellen Sie eine benutzerdefinierte URL basierend auf einem Dropdown-Menü in WordPress – Formularübermittlung

Lesezeit: 1 Minute

So erstellen Sie eine benutzerdefinierte URL basierend auf einem Dropdown Menu
Jamie

Ich muss ein bestimmtes Wort an die URL anhängen, je nachdem, welche Option aus einem Dropdown ausgewählt ist, um eine benutzerdefinierte Bestätigungsbildschirm-URL zu erstellen. Dabei spielt es keine Rolle, welches Kontaktformular ich nutze (Contact Form 7, Gravity, etc). Ich habe online nach Lösungen dafür gesucht und eine gefunden, die helfen könnte:

header( "Location: http://mysite.com/result/?" . $_POST['dropdown_name'] );

aber ich bin mir nicht sicher, wo ich es hinstellen soll. In der Datei „submissions.php“ von Contact Form 7 habe ich Folgendes:

<input type="text" name="submit" class="tag" readonly="readonly" onfocus="this.select()" />

Könnte ich das hier irgendwie verwenden, um basierend auf dem ausgewählten Dropdown-Wert auf eine Seite umzuleiten? Ich bin damit einverstanden, die zu übergebenden URL-Werte vorzudefinieren.

Ein Dropdown ist ein <select> Element nicht ein <input>.
Natürlich kann dies getan werden. Ich würde empfehlen, dafür ein kleines Plugin zu erstellen und die Weiterleitung zum hinzuzufügen init Aktion so etwas.

<?php
/*
Plugin name: redirect on post
Desciption: http://stackoverflow.com/questions/13686245/how-to-create-a-custom-url-based-on-dropdown-in-wordpress-form-submission
*/ 
function redirect_on_submit() {
  // check if the post is set
  if (isset($_POST['dropdown_name']) && ! empty ($_POST['dropdown_name'])) {
    header( "Location: http://mysite.com/result/?" . $_POST['dropdown_name'] );
  }
}
add_action('init', redirect_on_submit);

füge diese zu einer neuen Datei im Plugin-Ordner hinzu und aktiviere sie im Plugin-Menü.

1004330cookie-checkSo erstellen Sie eine benutzerdefinierte URL basierend auf einem Dropdown-Menü in WordPress – Formularübermittlung

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy