it-swarm.com.de

So leiten Sie den Benutzer nach dem Absenden des Formulars auf eine Seite weiter

Ich habe drei Dropdown-Filter auf der Startseite, um Land, Gebiet und Region auszuwählen und muss den Benutzer in Abhängigkeit von den Filterwerten beim Klicken auf die Schaltfläche "Senden" zur Seite "Land/Gebiet/Region" umleiten.

Zu Ihrer Information, ich habe Seiten mit dem gleichen slug.eg- example.com/country-name/territory-name/region-name

Ich versuche, wp_redirect( $final_url ); exit; zu verwenden, aber es wird eine Warnung ausgegeben.

Warnung: Header-Informationen können nicht geändert werden - Header, die bereits von (Ausgabe gestartet unter E:\path\to\root-folder\wp-includes\class.wp-styles.php: 154) in E:\path\to\root- Ordner\wp-includes\pluggable.php in Zeile 1121

Bitte helfen Sie.

Kann mir jemand einen besseren Weg vorschlagen?

// Edit - hier ist mein Code

if(isset($_POST['submit']) and $_POST['action']=='findurl')
    {
        //Result $POST Array ( [countrySelect] => 1 [territorySelect] => 1 [regionSelect] => 2 )
        if (isset($_POST['countrySelect'])){

            $rows_country_url = $wpdb->get_results("select url from country where id=".$_POST['countrySelect']."");
        }

        if (isset($_POST['territorySelect'])){

            $rows_territory_url = $wpdb->get_results("select url from territory where id=".$_POST['territorySelect']."");
        }

        if (isset($_POST['regionSelect'])){

            $rows_region_url = $wpdb->get_results("select url from region where id=".$_POST['regionSelect']."");
        }


        if($rows_country_url[0]->url !=''){
        $final_url = home_url('/').$rows_country_url[0]->url;}

        if($rows_territory_url[0]->url !=''){
        $final_url = $final_url.'/'.$rows_territory_url[0]->url;}

        if($rows_region_url[0]->url !=''){
        $final_url = $final_url.'/'.$rows_region_url[0]->url;}

        echo $final_url;

        if($final_url!=''){ 
        wp_redirect( home_url() ); exit;
        echo "not blank";
        }else{ echo "Please select values";}
    }
1
user2443437

Stellen Sie sicher, dass dies keine Datenausgabe oder Leerzeichen über wp_redirect( $final_url ); exit; sind, da andernfalls diese Warnung immer angezeigt wird.

Auch optional können Sie verwenden

<?php
//Php code 
 ?>
<script type="text/javascript">
      document.location.href="http://example.com";
</script>
<?php
//php code
?>
1
TBI Infotech

Meine Lösung ist.

  1. Erstellen Sie eine Funktion für die JavaScript-Umleitung.

    funktion rm_redirect ($ url) {$ string = ''; $ string. = 'window.location = "'. $ url. '"'; $ string. = ''; echo $ string; }

  2. Rufen Sie diese Funktion auf, wann immer Sie möchten.

    rm_redirect (' http://example.com ');

0
Rubel Miah