확장변수 입력하지않은 것은 노출 되지 않게 설정 하는 방법
CMS/프레임워크 | Rhymix 2.0 |
---|---|
개발 언어 | PHP 7.2 |
확장 변수에 입력 의무가 없는경우
입력안하는 경우가 생깁니다.
입력 안한 확장 변수 값이 그대로 화면에 노출되어서 어색한데요
확장변수를 입력 안한경우 해당 확장변수는 노출 안되게 설정 가능할까요?
지금 라이믹스에는 잘 적용 되어 있는 것 같습니다.
url 을 입력안하니 url은 빠지고
이렇게 두개만 노출이 되어 깔끔하네요.
스킨상에서 IF 문이 있는지 궁금합니다.

톰캣
Lv. 11
시대의 흐름에 뒤떨어지지 않도록 아주 천천히지만 노력하고 있습니다.
댓글 11
여기를 보면
<tr loop="$oDocument->getExtraVars() => $key,$val" cond="$val->getValueHTML() && $val->eid!='rd_preview'">
이렇게 되어 있는데요.
확장변수 입력값 $val->getValueHTML() 이 있으면 <tr> 태그를 출력하고 없으면 출력하지 않는다는 뜻이 되겠습니다.
즉, <!--@if($val->getValueHTML())--> 이 코드를 적절한 위치에 넣어주시면 될 겁니다.
스케치북에서 기본 작동하고 있는줄 몰랐네요
윤삼님 항상 감사드립니다!!
{$document->getExtraEidValueHTML('확장변수')}
이렇게 확장변수를 게시글이 아닌 리스트에 출력하고있는데
혹시 이것도 값이 없으면 안뜨게 하려면
<!--@if($val->{$document->getExtraEidValueHTML('확장변수')})-->
이런식으로 활용이 가능할까요?
중괄호는 php로 치면 echo 같은 거여서 잘 안 되실 겁니다.
그냥 이렇게 해보세요.
<!--@if($document->getExtraEidValueHTML('확장변수'))-->
~~~
<!--@end-->
if 확장변수에 내용이 없으면 안뜨게
있으면 특정 이미지나 텍스트를 추가로 넣어주려고 합니다. 혹시 IF작동가능할까요?
그래서 여기 val을 넣어놧는데 ㅈ중괄호네요 그냥 괄호로도 고쳐보겠습니다.
<!--@if($val->($document->getExtraEidValueHTML('확장변수')))-->
확장변수가 있으면 넣어주고 이미지나 텍스트를 넣어주고 없으면 빼려고합니다.
다시 스케치북 기준으로 말씀드리면 이렇게 될 것 같습니다.
이 부분에 해당하는데요.
https://github.com/rhymix/rhymix-sketchbook/blob/f137bb37f24160e35501bd9f03973e9679a89e8c/_list_normal.html#L135
(오타가 없다면ㅎ) 아래처럼 진행하면 될 겁니다.
$val이거나 $document거나 상황에 맞는 것 하나를 선택하세요.