Extra Form
PHP PHP 7.2
CMS Rhymix 2.0

안녕하세요.

 

{$val->getFormHTML() 로 확장필드가 출력되는것 같은데 

 

  autocomplete="off"

 

를 삽입할 수 있는 방법이 있을까요?

 

classes/extravar/Extravar.class.php를 수정하면 코어를 건드는것이 되는거라서 패치때마다 재작업을해야 할텐데 고민스럽네요.

 

 

  • profile

    스킨에서 출력할 때 문자열 치환으로 땜빵하면 어떨까요?

    <input type="text" ... (후략) → <input type="text" autocomplete="off" ... (후략)

     

    $val->getFormHTML()을 그대로 쓰거나, 코어를 수정하거나, 두 가지 선택지만 생각하시는 분들이 많은데... 사실 저것도 스킨에서 출력하는 하나의 변수에 불과하므로 코어에서 제공하는 기본 태그를 사용할 의무는 없습니다.

     

    PHP 함수나 정규식을 사용해서 마음대로 치환해도 되고, $val의 다른 속성들을 조합해서 직접 만들어도 아무 문제가 없지요. 대표적으로 회원가입 스킨에서 서명 항목은 확장변수를 무시하고 에디터를 뿌려버리고 있습니다.

  • profile profile
    감사합니다!! 회원 가입부분 코드 참고해보겠습니다.
  • profile profile

    {str_replace('<input type="url"', '<input type="url" autocomplete="off"', ($val->getFormHTML()))}
    {str_replace('<input type="text"', '<input type="text" autocomplete="off"', ($val->getFormHTML()))}

    덕분에 잘 치환하여 사용 중입니다.

    근데 이렇게 타입이 두개라 두개를 치환해야하는 상황인데
    혹시 치환자 한줄에 2가지 치환자를 넣는 방법은 없을까요?

    저렇게 작업하니 입력폼이 2번나와버리네요

     

    {str_replace('<input type="text"', '<input type="text" autocomplete="off"', (
            {str_replace('<input type="text"', '<input type="text" autocomplete="off"', ($val->getFormHTML()))}))}

    이렇게 어찌 하면 될것 같은데

  • profile
    넣든 안넣든 브라우저 동작은 똑같을걸요
  • profile
    {str_replace(array('<input type="url"', '<input type="text"'), array('<input type="url" autocomplete="off"', '<input type="text" autocomplete="off"'), $val->getFormHTML())}

    로 해결하였습니다!!! 다들 감사합니다!ㅎㅎ 기본 함수도 모르다보니 한가지일이 참 오래걸리네요.