안녕하세요.
코스모스팜 회원가입 플러그인을 사용중입니다.
강력한 비밀번호 설정하면
회원가입 화면에서는 패스워드 validator가 잘 동작합니다.
(영문, 숫자, 특수문자 포함 8자리 이상만 등록 가능하게)
그런데 패스워드 변경 페이지에서는 validation이 되지 않습니다.
WP-Members 문제라면 따로 찾아볼 텐데 코스모스팜 플러그인 이슈라서 여기에 질문드립니다.
혹시 방법 아시는 분 계시면 답변 부탁드립니다~
감사합니다
안녕하세요~^^
비밀번호 변경 페이지 기능을 업데이트 하도록 하겠습니다.
개발 건들이 많이 밀려있지만 최대한 빠르게 업데이트하도록 하겠습니다.
고맙습니다.
답변 감사합니다!
그런데 런칭을 빨리해야해서요.
다른 플러그인을 사용하거나
functions.php에서 기능 추가 할 수 있는 방법은 없을까요?
아니면 WP-Members 플러그인을 이용하는 방법이라도요 ㅎㅎ
snippet 작성가능합니다.
현재 가능한 방법이 있으면 가이드 부탁드려요~
감사합니다.
안녕하세요~^^
FTP로 접속해서 /wp-content/plugins/cosmosfarm-members/skin/default/script.js 파일에
1. 아래의 코드를 찾아서
var password1 = jQuery('.cosmosfarm-members-form input[name="password"]').val();
var password2 = jQuery('.cosmosfarm-members-form input[name="confirm_password"]').val();
아래의 코드로 교체해보세요.
var password1;
var password2;
if(jQuery('.cosmosfarm-members-form input[name="password"]').length){
password1 = jQuery('.cosmosfarm-members-form input[name="password"]').val();
password2 = jQuery('.cosmosfarm-members-form input[name="confirm_password"]').val();
}
else if(jQuery('.cosmosfarm-members-form input[name="pass1"]').length){
password1 = jQuery('.cosmosfarm-members-form input[name="pass1"]').val();
password2 = jQuery('.cosmosfarm-members-form input[name="pass2"]').val();
}
2. 아래의 코드를 찾아서
if(cosmosfarm_members_settings.use_strong_password){
jQuery('.cosmosfarm-members-form input[name="password"]').keyup(function(){
cosmosfarm_members_check_password_strength();
});
jQuery('.cosmosfarm-members-form input[name="confirm_password"]').keyup(function(){
cosmosfarm_members_check_password_strength();
});
}
아래의 코드로 교체해보세요.
if(cosmosfarm_members_settings.use_strong_password){
jQuery('.cosmosfarm-members-form input[name="password"]').keyup(function(){
cosmosfarm_members_check_password_strength();
});
jQuery('.cosmosfarm-members-form input[name="confirm_password"]').keyup(function(){
cosmosfarm_members_check_password_strength();
});
jQuery('.cosmosfarm-members-form input[name="pass1"]').keyup(function(){
cosmosfarm_members_check_password_strength();
});
jQuery('.cosmosfarm-members-form input[name="pass2"]').keyup(function(){
cosmosfarm_members_check_password_strength();
});
}
3. 아래의 코드를 찾아서
jQuery('.cosmosfarm-members-form.signup-form form').submit(function(){
if(cosmosfarm_members_settings.use_strong_password){
var strength = cosmosfarm_members_check_password_strength();
switch(strength){
case 'mismatch':
alert(cosmosfarm_members_localize_strings.your_password_is_different);
break;
case 'short':
alert(cosmosfarm_members_localize_strings.password_must_consist_of_8_digits);
break;
case 'space':
alert(cosmosfarm_members_localize_strings.please_enter_your_password_without_spaces);
break;
case 'bad':
alert(cosmosfarm_members_localize_strings.password_must_consist_of_8_digits);
break;
default:
//alert('안전한 비밀번호입니다.');
}
if(strength != 'good'){
return false;
}
}
return true;
});
아래의 코드로 교체해보세요.
jQuery('.cosmosfarm-members-form.signup-form form').submit(cosmosfarm_members_form_submit);
jQuery('.cosmosfarm-members-form.pwdchange-form form').submit(cosmosfarm_members_form_submit);
4. 아래의 코드를 찾아서
jQuery(document).ready(function(){
찾은 코드위에 아래의 코드를 추가해보세요.
function cosmosfarm_members_form_submit(){
if(cosmosfarm_members_settings.use_strong_password){
var strength = cosmosfarm_members_check_password_strength();
switch(strength){
case 'mismatch':
alert(cosmosfarm_members_localize_strings.your_password_is_different);
break;
case 'short':
alert(cosmosfarm_members_localize_strings.password_must_consist_of_8_digits);
break;
case 'space':
alert(cosmosfarm_members_localize_strings.please_enter_your_password_without_spaces);
break;
case 'bad':
alert(cosmosfarm_members_localize_strings.password_must_consist_of_8_digits);
break;
default:
//alert('안전한 비밀번호입니다.');
}
if(strength != 'good'){
return false;
}
}
return true;
}
/wp-content/plugins/cosmosfarm-members/skin/default/change-password-form.php 파일에
5. 아래의 코드를 찾아서
<div class="password-strength-meter-display"></div>
<label for="pass2"><?php echo __('Confirm new password', 'cosmosfarm-members')?></label>
<div class="div_text">
<input name="pass2" type="password" id="pass2" class="password" required>
</div>
아래의 코드로 교체해보세요.
<label for="pass2"><?php echo __('Confirm new password', 'cosmosfarm-members')?></label>
<div class="div_text">
<input name="pass2" type="password" id="pass2" class="password" required>
<?php if($option->use_strong_password):?>
<span class="password-strength-meter-display bad"><?php echo __('Password must consist of 8 digits, including English, numbers and special characters.', 'cosmosfarm-members')?></span>
<?php endif?>
</div>
추후 위의 내용들을 업데이트에 반영하겠습니다.
고맙습니다.
답변 감사합니다!
:-)