web-dev-qa-db-ja.com

登録フォームのプレースホルダーテキスト

私はネイティブのWordPress登録フォームにプレースホルダーテキストを追加しようとしています。私は現在Register Plus Reduxプラグインを使用しています。このプレースホルダテキストをフォームのテキスト入力フィールドに追加する方法

ユーザーの名前に姓名を使用するように伝えます。誰かが私を助けることができれば私はうんざりします。

6
mr_bythatmuch

別のスクリプトを追加せずにこれを行う別の簡単な方法は、PHP str_replace 関数を使用することです。

$args = array(
    'echo' => false,
);

$form = wp_login_form( $args ); 

//add the placeholders
$form = str_replace('name="log"', 'name="log" placeholder="Username"', $form);
$form = str_replace('name="pwd"', 'name="pwd" placeholder="Password"', $form);

echo $form;
5
renzo_cast

残念ながら、ログイン/登録フォームの入力フィールドを変更してプレースホルダーを追加するためのフック/フィルターはありません。

しかし、これは簡単なjQueryで実現できます。以下の手順を追加しています

このプラグインがどのようにフォームを変更するのか私は知りませんが、あなたもそれに従うことができます。以下は、デフォルトのログイン/登録ページで機能するコードです。

最初にjsファイルを作成する必要があります。私はそれを私のactive theme's js folderに作成し、それをcustom.jsと名付けました。

それからこのファイルの下の行を追加しました。

/**
 * Custom js file.
 */

jQuery(document).ready(function(){
    jQuery('#user_login').attr('placeholder', 'User Name');
    jQuery('#user_email').attr('placeholder', 'User Email');
    jQuery('#user_pass').attr('placeholder', 'User Password');
});

上記は、User NameUser Email、およびUser Password入力フィールドに、それぞれuser_loginuser_email、およびuser_passとしてプレースホルダーを追加します。あなたはあなたの要件に従ってそれらを変更することができます。

これで、アクティブなテーマのfunctions.phpfileに以下のコードを追加することで実行できるこのjsファイルを追加/エンキューする必要があります。

add_action( 'login_enqueue_scripts', 'wpse_login_enqueue_scripts', 10 );
function wpse_login_enqueue_scripts() {
    wp_enqueue_script( 'custom.js', get_template_directory_uri() . '/js/custom.js', array( 'jquery' ), 1.0 );
}
3
Maruti Mohanty