2013-09-06 18 views
5

私はwoocommerceプラグイン2.0.13を使用します。私のアカウントページには、同じページにログインと登録のセクションがあります。私はそれらを別々にしたい。 form_login.phpを編集して、ログイン用のform_login.phpと登録用のform_register.phpという2つのファイルを作成します。私は次のコードを追加私のテーマのfunction.phpでwoocommerce:別のログインページと登録ページ

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

は、私は次のようにform_registration.phpへのリンクを提供form_login.phpを新しいです。

/*// Separete Login form and registration form */ 
    add_action('woocommerce_before_my_account','load_registration_form', 2); 
    function load_registration_form(){ 
     if(isset($_GET['action'])=='register'){ 
      woocommerce_get_template('myaccount/form-registration.php'); 
     } 
    } 

しかし、これは機能しません。誰もが間違って何が起こっているアイデアがあります。私は完全に間違っていますか?

答えて

0

あなたが使っているフックは間違っています。ユーザーがログインしていないとして、excecutedことが文句を言わない。

あなたがWoocommerce form-login.phpのコピーを作成し、form-register.phpそれに名前を付けることができwoocommerce_before_customer_login_form

1

を使用する必要があります。 form-login.php/woocommerce/templates/myaccount/フォルダにあります。あなたはfunction.phpファイルに次のコードを追加することで、あなたのテーマを変更する必要が

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

次:

はその後form-login.phpに、あなたはこのコードを使用してフォーム-register.phpへのリンクを作成することができます

<?php 
/* Separete Login form and registration form */ 
add_action('woocommerce_before_customer_login_form','load_registration_form', 2); 
function load_registration_form(){ 
    if(isset($_GET['action'])=='register'){ 
    woocommerce_get_template('myaccount/form-registration.php'); 
    } 
} 
関連する問題