web-dev-qa-db-de.com

Post-Meta im Woocommerce-Bestell-Frontend aktualisieren

Ich werde, dass der Kunde in der Reihenfolge der benutzerdefinierten Dateien aktualisieren kann (wer wurde in die Checkout-Seite eingefügt)

Ich habe diesen Code in der order-details.php Seite, aber er zeigt nur den Wert in der Eingabe an, aber er aktualisiert nicht mit dem neuen Wert

<?php
 global $post;


 if ( isset( $_POST['submit'] ) )
 {
 if( ! isset( $post ) ) {
 echo 'Error: Nichts ausgewählt';
 die();
 }
 else if( ! isset( $_POST['frontstrasse'] ) && ! empty( $_POST['frontstrasse'] ) ){
 echo 'Error: Strasse Not Set';
 die();
 }


 update_post_meta( $order->id, 'frontstrasse', sanitize_text_field( $_POST['Strasse'] ) );
 }


 $istrasse = get_post_meta($order->id, 'Strasse', true );


 echo print_r($istrasse);
 ?>
 <form method="post" action="">
 <input type='text' name='frontstrasse' value='<?php echo isset($istrasse) ? $istrasse : ''; ?>' />
 <input type='submit' value='save' />
 </form>
1
kreativcube

Dieser Code funktioniert für mich. Entschuldigung, dass der Code nicht gut lesbar ist.

<?php
     global $post;

     $post = $order_id;

       if ( isset( $_POST['submit'] ) )
         {
                 echo 'Update nicht';
         } else  if ( ! empty( $_POST['frontstrasse'] ) ) {
        update_post_meta( $order_id, 'Strasse', sanitize_text_field( $_POST['frontstrasse'] ) );
        update_post_meta( $order_id, 'Haus-Nr', sanitize_text_field( $_POST['fronthausnr'] ) );


}
$istrasse = get_post_meta($order->id, 'Strasse', true );
$ihausnr = get_post_meta($order->id, 'Haus-Nr', true );

  ?>

 <form method="post" action="">
<label>Strasse</label><input type='text' name='frontstrasse' value='<?php echo $istrasse ?>' />
<label>Haus-Nr</label><input type='text' name='fronthausnr' value='<?php echo  $ihausnr ?>' />
<input type='submit' value='save' name='frontsubmit' />
 </form>
0
kreativcube