안녕하세요.
{$val->getFormHTML() 로 확장필드가 출력되는것 같은데
autocomplete="off"
를 삽입할 수 있는 방법이 있을까요?
classes/extravar/Extravar.class.php를 수정하면 코어를 건드는것이 되는거라서 패치때마다 재작업을해야 할텐데 고민스럽네요.
PHP | PHP 7.2 |
---|---|
CMS | Rhymix 2.0 |
안녕하세요.
{$val->getFormHTML() 로 확장필드가 출력되는것 같은데
autocomplete="off"
를 삽입할 수 있는 방법이 있을까요?
classes/extravar/Extravar.class.php를 수정하면 코어를 건드는것이 되는거라서 패치때마다 재작업을해야 할텐데 고민스럽네요.
{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()))}))}
이렇게 어찌 하면 될것 같은데
스킨에서 출력할 때 문자열 치환으로 땜빵하면 어떨까요?
<input type="text" ... (후략) → <input type="text" autocomplete="off" ... (후략)
$val->getFormHTML()을 그대로 쓰거나, 코어를 수정하거나, 두 가지 선택지만 생각하시는 분들이 많은데... 사실 저것도 스킨에서 출력하는 하나의 변수에 불과하므로 코어에서 제공하는 기본 태그를 사용할 의무는 없습니다.
PHP 함수나 정규식을 사용해서 마음대로 치환해도 되고, $val의 다른 속성들을 조합해서 직접 만들어도 아무 문제가 없지요. 대표적으로 회원가입 스킨에서 서명 항목은 확장변수를 무시하고 에디터를 뿌려버리고 있습니다.