이 태그는 사용자 정의가 가능한 가젯 설정 태그입니다. 형식은 다음과 같습니다.

<b:widget-settings>
  <b:widget-setting name='가젯 설정 이름'>
    <!-- 가젯 설정 값 -->
  </b:widget-setting>
</b:widget-settings>

<b:widget-settings> 은 부모 요소이고 하위 요소로는 <b:widget-setting> 입니다. <b:widget> 에는 <b:widget-settings> 태그 하나만 올 수 있지만 <b:widget-setting> 은 여러 개가 될 수 있습니다. <b:widget-setting> 값은 HTML 로 인코딩된 텍스트가 됩니다. 가젯 설정 태그는 가젯을 설치하였을 때 가젯에 맞는 설정 값이 자동으로 생성됩니다. 간단하게만 알아두세요.

가장 많이 사용되는 가젯은 HTML/javascript 가젯으로 HTML 가젯을 설치하였을 때 전체적인 구조는 다음 예와 같습니다.

<b:section class='profile' id='profile' name='내 프로필' showaddelement='yes'>
  <b:widget id='HTML3' locked='false' title='프로필 제목' type='HTML'>
    <b:widget-settings>
      <b:widget-setting name='content'>
<![CDATA[
<h1>안녕! 하보니</h1>
]]>
      </b:widget-setting>
    </b:widget-settings>
    <b:includable id='main'>
      <div class='widget-content'> 
        <data:content/>
      </div>
      <b:include name='quickedit'/>
    </b:includable>
  </b:widget>
</b:section>

HTML 가젯 설정 태그의 name='content' 입니다. name 속성은 어떤 가젯을 설치하느냐에 따라 값이 달라집니다. HTML 가젯의 name 값은 ‘content’ 입니다.

HTML 가젯을 설치한 다음 레이아웃 편집기에서 값을 편집하고, HTML 코드를 삽입한 다음 HTML 편집기를 통해 코드를 살펴보면 아래와 같이 인코딩되어 보일 수 있습니다.

<b:widget-settings>
  <b:widget-setting name='content'>
    &lt;h1&gt;안녕! 하보니&lt;/h1&gt;
  </b:widget-setting>
</b:widget-settings>

이럴 때, HTML 편집기에서 직접 값을 변경하려면 인코딩된 값을 수정하기란 쉽지 않을 꺼라 생각됩니다. 그래서 <![CDATA[ … ]]> 를 이용합니다. 이제 링크목록 가젯을 살펴보도록 하죠.

<b:widget id='LinkList94' title='메인 메뉴' type='LinkList' version='1'>
  <b:widget-settings>
    <b:widget-setting name='sorting'>NONE</b:widget-setting>
    <b:widget-setting name='text-0'>홈</b:widget-setting>
    <b:widget-setting name='link-0'>http://habonyphp.com/</b:widget-setting>
    <b:widget-setting name='text-1'>웹 위자드</b:widget-setting>
    <b:widget-setting name='link-1'>/p/download.html</b:widget-setting>
  </b:widget-settings>

  <b:includable id='main'>
    <div class='widget-content'>
      <ul class='menu' id='menu-main-nav'
       itemscope='' itemtype='http://schema.org/SiteNavigationElement'> 
        <b:loop values='data:links' var='link'>
          <li itemprop='name'>
            <a expr:href='data:link.target' itemprop='url'><data:link.name/></a>
          </li>
        </b:loop>
      </ul>
    </div>
  </b:includable>
</b:widget>

위 코드에서 가젯 설정 이름이 여러 개가 보일 텐데, name=‘sorting’ 인 것은 정렬 값입니다. NONE 은 정렬하지 않겠다는 것을 뜻합니다.

하나의 링크에 두 개의 설정 값이 들어갑니다. 하나는 링크 이름으로 text-n 이고, 나머지 하나는 링크 URL로 link-n 입니다. 여기서 n 은 링크 수를 나타내며, n 수는 0부터 카운터됩니다. 가젯 설정 값은 <b:includable> 에 설정된 루프<b:loop>를 통해 반복하여 출력합니다.

0 댓글