Separate Registrierungsseite auf der WooCommerce-Website

Lesezeit: 6 Minuten

Separate Registrierungsseite auf der WooCommerce Website
Lipsa

Kann mir jemand helfen, eine separate Registrierungsseite in WooCommerce zu erstellen, anstatt sie in der my-account Seite?

In dem my-account Seite Ich möchte einen Link anzeigen, der den Käufer zur Registrierungsseite führt.

  • Wie genau willst du die separate Registrierungsseite aufbauen? Ein paar mehr Informationen wären hilfreich.

    – maksbd19

    23. Mai 2014 um 13:00 Uhr

  • @maksbd19 Die Registrierungsseite enthält einige Textfelder wie Name, E-Mail, Passwort, Passwort erneut eingeben usw. und die Seite „Mein Konto“ enthalten nur ein Anmeldeformular und eine Schaltfläche „Registrieren“.

    – Lipsa

    26. Mai 2014 um 3:01 Uhr


Separate Registrierungsseite auf der WooCommerce Website
Pushpak Patel

bearbeiten Sie Ihre form-login.php Datei und trennen Sie das Anmeldeformular und das Registrierungsformular in zwei verschiedene Abschnitte, sagen Sie Abschnitt A und B.

Suchen Sie nun nach a GET Parameter auf der Seite, der definiert, welcher Abschnitt angezeigt werden soll. Standardmäßig wird die Anmeldung angezeigt, wenn der Parameter gefunden wird und “registrieren” ist, den Registrierungsbereich anzeigen

if( isset( $_GET['action']) && $_GET['action'] == "register"){
    // Section for registration
}else {
    // Section for Login form
}

Sie können einen Link für die Registrierung als angeben

<a href="'%20.get_permalink(woocommerce_get_page_id('myaccount')).%20'?action=register"> register </a>

Der Code für form-login.php

ist

— ABSCHNITT STARTEN —

<?php
/**
 * Login Form
 *
 * @author      WooThemes
 * @package     WooCommerce/Templates
 * @version     2.2.6
 */

if ( ! defined( 'ABSPATH' ) ) {
    exit; // Exit if accessed directly
}

?>

<?php wc_print_notices(); ?>

<?php do_action( 'woocommerce_before_customer_login_form' ); ?>

<?php if ( get_option( 'woocommerce_enable_myaccount_registration' ) === 'yes' ) : ?>

<div class="col2-set" id="customer_login">

    <div class="col-1">

<?php endif; ?>

        <h2><?php _e( 'Login', 'woocommerce' ); ?></h2>

        <form method="post" class="login">

            <?php do_action( 'woocommerce_login_form_start' ); ?>

            <p class="form-row form-row-wide">
                <label for="username"><?php _e( 'Username or email address', 'woocommerce' ); ?> <span class="required">*</span></label>
                <input type="text" class="input-text" name="username" id="username" value="<?php if ( ! empty( $_POST['username'] ) ) echo esc_attr( $_POST['username'] ); ?>" />
            </p>
            <p class="form-row form-row-wide">
                <label for="password"><?php _e( 'Password', 'woocommerce' ); ?> <span class="required">*</span></label>
                <input class="input-text" type="password" name="password" id="password" />
            </p>

            <?php do_action( 'woocommerce_login_form' ); ?>

            <p class="form-row">
                <?php wp_nonce_field( 'woocommerce-login' ); ?>
                <input type="submit" class="button" name="login" value="<?php esc_attr_e( 'Login', 'woocommerce' ); ?>" />
                <label for="rememberme" class="inline">
                    <input name="rememberme" type="checkbox" id="rememberme" value="forever" /> <?php _e( 'Remember me', 'woocommerce' ); ?>
                </label>
            </p>
            <p class="lost_password">
                <a href="https://stackoverflow.com/questions/23821488/<?php%20echo%20esc_url(%20wp_lostpassword_url()%20);%20?>"><?php _e( 'Lost your password?', 'woocommerce' ); ?></a>
            </p>

            <?php do_action( 'woocommerce_login_form_end' ); ?>

        </form>

<?php if ( get_option( 'woocommerce_enable_myaccount_registration' ) === 'yes' ) : ?>

    </div>

    <div class="col-2">

        <h2><?php _e( 'Register', 'woocommerce' ); ?></h2>

        <form method="post" class="register">

            <?php do_action( 'woocommerce_register_form_start' ); ?>

            <?php if ( 'no' === get_option( 'woocommerce_registration_generate_username' ) ) : ?>

                <p class="form-row form-row-wide">
                    <label for="reg_username"><?php _e( 'Username', 'woocommerce' ); ?> <span class="required">*</span></label>
                    <input type="text" class="input-text" name="username" id="reg_username" value="<?php if ( ! empty( $_POST['username'] ) ) echo esc_attr( $_POST['username'] ); ?>" />
                </p>

            <?php endif; ?>

            <p class="form-row form-row-wide">
                <label for="reg_email"><?php _e( 'Email address', 'woocommerce' ); ?> <span class="required">*</span></label>
                <input type="email" class="input-text" name="email" id="reg_email" value="<?php if ( ! empty( $_POST['email'] ) ) echo esc_attr( $_POST['email'] ); ?>" />
            </p>

            <?php if ( 'no' === get_option( 'woocommerce_registration_generate_password' ) ) : ?>

                <p class="form-row form-row-wide">
                    <label for="reg_password"><?php _e( 'Password', 'woocommerce' ); ?> <span class="required">*</span></label>
                    <input type="password" class="input-text" name="password" id="reg_password" />
                </p>

            <?php endif; ?>

            <!-- Spam Trap -->
            <div style="<?php echo ( ( is_rtl() ) ? 'right' : 'left' ); ?>: -999em; position: absolute;"><label for="trap"><?php _e( 'Anti-spam', 'woocommerce' ); ?></label><input type="text" name="email_2" id="trap" tabindex="-1" /></div>

            <?php do_action( 'woocommerce_register_form' ); ?>
            <?php do_action( 'register_form' ); ?>

            <p class="form-row">
                <?php wp_nonce_field( 'woocommerce-register' ); ?>
                <input type="submit" class="button" name="register" value="<?php esc_attr_e( 'Register', 'woocommerce' ); ?>" />
            </p>

            <?php do_action( 'woocommerce_register_form_end' ); ?>

        </form>

    </div>

</div>
<?php endif; ?>

<?php do_action( 'woocommerce_after_customer_login_form' ); ?>

— ENDE ABSCHNITT —

Was kann ich diesen Ausschnitt einfügen:

— ABSCHNITT STARTEN —

if( isset( $_GET['action']) && $_GET['action'] == "register"){
    // Section for registration
}else {
    // Section for Login form
}

— ENDE START

und diese URL

— ABSCHNITT STARTEN —

<a href="'%20.get_permalink(woocommerce_get_page_id('myaccount')).%20'?action=register"> register </a>

— ENDE ABSCHNITT —

1646629748 909 Separate Registrierungsseite auf der WooCommerce Website
Rasika

Ich habe endlich den Code herausgefunden, um separate Registrierungs- und Anmeldeseiten über einzelne Links in der Kopfzeile zu haben.

Sie müssen 2 Dateien in Ihrem Child-Theme bearbeiten:

  1. functions.php und
  2. form-login.php

Ich habe txt-Dateien für den Code angehängt

1) Funktionen.php: Sie möchten einen Registrierungslink in der Kopfzeile erstellen, der auf die Anmeldeseite verweist, aber auch eine Aktion festlegt, die anzeigt, dass Sie auf Registrieren geklickt haben. Also das:

$aux_links_output .= ''. __("Login", "swiftframework") .''. "\n";

wird das:

$aux_links_output .= ''. __("Login", "swiftframework") .''. "\n";
$aux_links_output .= ''. __("Register", "swiftframework") .''. "\n";

2) form-login.php code: Hier möchten Sie eine if,else-Anweisung erstellen. Wenn Sie auf Registrieren geklickt haben, gehen Sie zur Registrierungsseite, andernfalls zur Anmeldeseite:

<?php if( isset( $_GET['action']) && $_GET['action'] == "register") : ?>

Abschnitt für die Registrierung

<?php else : ?>

Abschnitt für Anmeldeformular

<?php endif; ?>

Achten Sie auf die Verpackungen

Danke

963040cookie-checkSeparate Registrierungsseite auf der WooCommerce-Website

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

Privacy policy