웹마스터 팁

XE 1.5.3.2  에 배포되는 내용으로 알고 있는데..

혹여나 업데이트 안 하고 필요하신 분이 있을까봐서 적어둡니다

기존소스가 조금 틀려서  120908 에 살짝 고쳐서 다시 기재해둡니다

 

또한 다국어 기반일때 좀 애매하게 꼬이는데...

(즉, 특정 다국어에는 기재되어있고,  특정 다국어에는 안 되어있는 경우,  타다국어 중 하나에라도 있으면 계산이 되었었는데

 현재 보고있는 다국어 기준으로 수가 카운트되도록 소스를 바꿨습니다.   XE 이슈 쪽에 등록한건 이 부분은 제외되어있습니다)

-----------------------------------

 

글 수를 카운트 하는 함수는 별도로 document 모듈 안에 있는 것으로 알고 있습니다
document.model.php  에서  getDocumentCount  함수죠
여기에 기본적인 search 값을 넣어서도 가능하기에 일반적으로는 쓸 수 있는데

 

특정 확장변수 값이 포함된 글의 개수를 뽑을 방법이 없습니다
그렇다고 확장변수를 통한 글목록 추출로는 default 가 게시판 노출갯수로 제한이
되어있기에, 정확한 수를 뽑을 수가 없죠

따라서, 특정확장변수가 포함된 글의 개수를 알아내는 함수가 있었으면 합니다


위치는  modules/document/document.model.php  에 그래도 추가하면 되고


function getDocumentExtraVarsCount($module_srl, $search_obj = NULL) {
 // Additional search options
 $args->module_srl = $module_srl;

 $args->category_srl = $search_obj->category_srl;
 
 $args->var_idx = $search_obj->s_var_idx;
 $args->var_eid = $search_obj->s_var_eid;
 $args->var_value = $search_obj->s_var_value;

$args->var_lang_code = Context::getLangType();    //  현재 보고있는 언어에서만 뽑히게

 

 $output = executeQuery('document.getDocumentExtraVarsCount', $args);
 // Return total number of
 $total_count = count($output->data);
 return (int)$total_count;
}

 

modules/document/queries/getDocumentExtraVarsCount.xml  형태로 쿼리 추가

<query id="getDocumentExtraVarsCount" action="select">
    <tables>
        <table name="documents" />
        <table name="document_extra_vars" alias="extra_vars" />
    </tables>
    <columns>
        <column name="*" />
    </columns>
    <conditions>
        <condition operation="in" column="documents.module_srl" var="module_srl" filter="number" />
        <condition operation="in" column="documents.category_srl" var="category_srl" filter="number" pipe="and" />
        <condition operation="equal" column="extra_vars.module_srl" default="documents.module_srl" pipe="and" />
        <condition operation="equal" column="extra_vars.document_srl" default="documents.document_srl" pipe="and" />
        <condition operation="equal" column="extra_vars.var_idx" var="var_idx" pipe="and" />
        <condition operation="equal" column="extra_vars.eid" var="var_eid" pipe="and" />
        <condition operation="in" column="documents.status" var="statusList" pipe="and" />
        <condition operation="like" column="extra_vars.value" var="var_value" notnull="notnull" pipe="and" />

        <condition operation="equal" column="extra_vars.lang_code" var="var_lang_code" pipe="and" />
    </conditions>
 <groups>
   <group column="extra_vars.document_srl" />
 </groups>
</query>
      

 

 

실제 이 함수의 사용 예는

 

     {@
     $oDocumentModel = &getModel('document');

//   $search_extra->s_var_idx = '1';     // idx 로 하거나 eid 로 하거나 원하는걸로 하면 됨
     $search_extra->s_var_eid = 'letter';
     $search_extra->s_var_value = 'a';

     $search_extra->category_srl = $category;    // 카테고리 감안해서 검색하도록 추가 (131017)

     $module_srl = $module_info->module_srl;

     $extra_total = $oDocumentModel->getDocumentExtraVarsCount($module_srl,$search_extra);
     }

     {$extra_total}

 

 

ps. 현재 value 를 like 로 추출하는데 (checkbox 의 경우나 text,textarea 형태등을 감안해)

    그런데,  selectbox 나 radio 형식으로 쓰고, 해당한 값을 정확히 일치하는 경우만 뽑고프면

    쿼리를  <condition operation="equal" column="extra_vars.value" var="var_value" notnull="notnull" pipe="and" />    로 하시면 될겁니다

제목 글쓴이 날짜
특정 확장변수를 글 추천자에게만 보이게 하기 [10] 뮤랑이 2010.01.11
마이피플봇을 이용한 마이피플 알리미 (푸시서비스) 이용하기 [4] garnecia 2014.06.01
관리자가 글 쓸때는 분류를 선택 안 해도 등록되도록 (공지글을 쓸때를 위해) 개선 [2] sejin7940 2014.06.21
게시판 글쓰기 폼은 없이 확장변수만 표시할 수 있는 게시판 만들기 (for sketchbook5 최신버전 기준) [2] 큰성565 2014.05.02
*LI-NA님의 큰 선물* SKETCHBOOK5 (최신버전)에서 특정 확장변수를 추천하는 사람에게만 공개하도록 하는 방법 [4] file 큰성565 2014.04.30
게시판에 대해 닉네임,이름 등의 정렬을 추가하는 방법 [1] sejin7940 2014.03.09
코어 수정 없이 스킨 수정만으로 게시판 목록에 유튜브,비메오 썸네일 출력 [2] foret 2014.02.23
XE 1.7.4 새로운 우편번호 체계에서 나머지주소 관련 사용실수 방지방법입니다 [1] sejin7940 2014.02.07
XE 1,7 에서 확장변수 기준으로 정렬 기능이 작동 안 하는 버그 수정법 [1] sejin7940 2013.12.04
확장변수, 회원가입 등의 한국 우편번호 검색 서버 주소 변경... [2] Double'U' 2013.12.26
[공유]로그인 하지 않아도 게시판에서 회원정보 출력 하기 (가입품 확장변수 포함) [6] file rminkim 2012.03.20
요즘 만들고 있는 사이트에 적용한 것(모바일 확장변수) [4] 유니눅스 2012.07.30
페이지로딩시 메모리 부족이란 오류메시지가 뜰때... 똑디 2013.11.07
특정 확장변수값이 포함된 글의 총 개수를 출력하는 함수 [3] sejin7940 2012.08.07
기본게시판에서 익명 선택하여 "게시글, 댓글" 작성이 가능하도록 세팅하기(sketchbook5 기준) [15] Ashon 2013.01.08
게시판 댓글 스킨에서 추가적인 변수 전달 안 되는 현상 보완 위해서. [1] sejin7940 2013.08.11
특정 카테고리의 최근 이미지 출력 위젯 [3] file 앙띠2 2010.04.28
-추가- 당신의 XE 기반 홈페이지를 훅가게 하는 방법 4가지 [26] 老姜君 2009.10.08
확장변수 폼 디자인 하기 [14] file Diver 2009.06.21
상담용 게시판 - 확장 변수 이용 [4] file 어라얼랑 2012.06.23