- 손쉽게 레이아웃 설정에서 최근게시물을 출력하는 방법(레이아웃 제작팁)2025년 02월 03일
- TheStorybook
- 작성자
- 2025.02.03.:50
레이아웃마다 레이아웃 설정에서 위젯을 출력하는 다양한 방법들이 있습니다.
레이아웃 위젯설정은 이런 식으로 가능합니다.
{$layout_info->wdg4??'<img class="zbxe_widget_output" widget="content_extended" skin="ewce_basic" colorset="white" widget_cache="0m" content_type="document" module_srls="" use_limit="N" order_target="list_order" order_type="desc" list_type="normal" option_view="title,regdate" page_count="1" markup_type="table" title_target="title" nickname_target="nickname" show_browser_title="N" show_content_title="N" show_comment_count="Y" show_trackback_count="Y" show_category="Y" show_icon="Y" show_point_level="N" show_always_new="N" show_nocomment_document="N" tab_type="none" tab_order="module_order" tab_showtype="module" tab_move_type="mouseover" category_range="all" hyperlink="Y" hyperlink_src="article" view_permission="list" view_secret_document="all_user" comment_document_secret="Y" thumbnail_type="crop" />'}
처음 만든 코드는 입력값이 있을 경우엔 입력된 값을 출력하고, 없는 경우엔 이미 만들어진 코드를 넣는 방식으로 했었는데요,
좀 더 발전된 방법으로? 좀 더 사용하기 간편한 방법으로 아래 방법을 추가로 만들어넣었습니다.
<!--@if($layout_info->wdg4)--> <!--@if( strlen($layout_info->wdg4) < 20 )--> <block> {@ $mids = $layout_info->wdg4; $oModuleModel = getModel('module'); $module_srl = $oModuleModel->getModuleSrlByMid($mids); $args = new stdClass(); $args->module_srl = $module_srl; if($mobile) $args->list_count = 4; else $args->list_count = 5; $list = executeQuery('document.getDocumentList',$args)->data; } <ul> <li loop="$list => $key, $val"> <a href="{$val->document_srl}"> <span class="title">{$val->title}</span> <span class="date">{zdate($val->regdate,"Y.m.d")}</span> </a> </li> </ul> </block> <!--@else--> {$layout_info->wdg4} <!--@end--> <!--@else--> <img class="zbxe_widget_output" widget="content_extended" skin="ewce_basic" colorset="white" widget_cache="0m" content_type="document" module_srls="" use_limit="N" order_target="list_order" order_type="desc" list_type="normal" option_view="title,regdate" page_count="1" markup_type="table" title_target="title" nickname_target="nickname" show_browser_title="N" show_content_title="N" show_comment_count="Y" show_trackback_count="Y" show_category="Y" show_icon="Y" show_point_level="N" show_always_new="N" show_nocomment_document="N" tab_type="none" tab_order="module_order" tab_showtype="module" tab_move_type="mouseover" category_range="all" hyperlink="Y" hyperlink_src="article" view_permission="list" view_secret_document="all_user" comment_document_secret="Y" thumbnail_type="crop" /> <!--@end-->
$layout_info->wdg4 값이 있는 경우 해당값을 출력하고, 없는 경우 기존에 만들어놓은 위젯코드를 넣어주는 방식은 동일합니다.
여기서 값이 있는 경우에 다시 if문을 추가해서 입력된 문자열의 길이가 20자 이하인 경우엔 최근게시물위젯코드가 아닌, 만들어놓은 php코드문에서 최근게시물을 출력하도록 해주었습니다.
보통 게시판명 $mid값은 20자 미만일테고, 위젯코드는 그보다 길어지니깐,
20자 미만은 단순히 게시판 $mid명만 입력하면 해당 게시판의 최근게시물이 출력되고,
그렇지 않은 경우에는 생성된위젯코드를 출력하는 방식이라고 생각하시면 됩니다.
이렇게 하면 사용자는 위젯생성코드를 만들지 않아도 간단히 게시판 mid명만 알고 있으면 쉽게 해당 게시판의 최근게시물을 출력할 수 있습니다.
'XE(Rhymix) > 변수 응용' 카테고리의 다른 글
제목에 태그 표출하기 or 제목에 태그 출력하고 링크 걸기 (0) 2025.02.07 라이믹스 쿼리문의 세계 - 서브쿼리 작성 예제 (0) 2025.02.03 라이믹스 쿼리문의 세계 - 중복검색 가능한 제목+확장변수검색 (0) 2025.02.03 메뉴 설정에서 항상 펼쳐짐을 선택했을 때 함수가 뭔가요? (사이트맵 메뉴, xe 항상 펼쳐진, 서브메뉴 항상 펼쳐진 상태로) (0) 2025.02.03 xe 관련 변수 php에서 호출하기, php 코딩으로 작성한 변수값을 xe로 전달하는 방법 (0) 2025.02.03 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)