웹마스터 팁

원본 글 출처 : http://sejin7940.co.kr/index.php?mid=xe_tips&document_srl=102289

 

 ====================================

 

게시판 설정에서, 정렬기준을  사용자정의값으로 저장가능한 Core 기반에서는

https://www.xpressengine.com/tip/22912043  참조해서  설정 저장 안 되는 버그 수정할 것

 

 

게시판 설정 기준 정렬 기능이 없는 Core 사용시에는

https://www.xpressengine.com/tip/22567972   참조해서,  정렬기능 추가할 것

 

====================================

 

 

현재 사용자정의 기준으로 정렬을 하면  getDocumentListExtraSort.xml  파일이 구현되고.
이 query 는 sort_index 대신 sort가 고정되어있고
사용자정의 기준으로 검색을 하면  getDocumentListWithinExtraVars.xml  파일이 실행되는데
이건 검색만 해당 eid 로 될뿐,  실제 정렬은 사용자정의를 제외한 일반 검색만 가능하게 되어있다.

 

이는 사용자정의 기준으로 정렬 설정을 해두고 사용자정의 검색할때뿐만 아니라.
기본 정렬 (등록일이나 문서번호) 로 정렬 후,  목록에서 사용자정의 기준으로 재정렬 한 후,  사용자정의 검색할때도
마찬가지로 결과가 안 나오는 문제가 발생한다.

 

결국 각각 다른 사용자정의 기준으로도  정렬 과 검색이 각각 될 수 있도록
테이블 3개를 join 한 새로운 query 를 추가하여 구현되도록 보완했다

 

 


1.
modules/document/document.model.php 에서

function getDocumentList  함수에서

if ($sort_check->isExtraVars)  


이 한줄을 아래 구문 전체로 교체

if ($sort_check->isExtraVars && substr_count($obj->search_target,'extra_vars'))
{
 $query_id = 'document.getDocumentListWithinExtraVarsExtraSort';
 $args->sort_index = str_replace('documents.','',$args->sort_index);
 $output = executeQueryArray($query_id, $args);
}
elseif ($sort_check->isExtraVars)

 

 

 

2.
modules/document/queries/getDocumentListWithinExtraVarsExtraSort.xml

파일 신규 생성

 

<query id="getDocumentListWithinExtraVarsExtraSort" action="select">
    <tables>
        <table name="documents" alias="d" />
        <table name="document_extra_vars" alias="ev" />
        <table name="document_extra_vars" alias="es" />
    </tables>
    <columns>
        <column name="d.*" />
    </columns>
 <index_hint name="idx_document_list_order" type="use" />
    <conditions>
        <condition operation="equal" column="ev.eid" var="sort_index" />
        <condition operation="equal" column="ev.document_srl" default="d.document_srl" pipe="and" />
        <condition operation="in" column="d.module_srl" var="module_srl" filter="number" pipe="and" />
        <condition operation="notin" column="d.module_srl" var="exclude_module_srl" filter="number" pipe="and" />
        <condition operation="in" column="d.category_srl" var="category_srl" pipe="and" />
        <condition operation="equal" column="d.is_notice" var="s_is_notice" pipe="and" />
        <condition operation="equal" column="d.member_srl" var="member_srl" filter="number" pipe="and" />
        <condition operation="in" column="d.status" var="statusList" pipe="and" />
        <group pipe="and">
            <condition operation="more" column="d.list_order" var="division" pipe="and" />
            <condition operation="below" column="d.list_order" var="last_division" pipe="and" />
        </group>
        <group pipe="and">
            <condition operation="like" column="d.title" var="s_title" />
            <condition operation="like" column="d.content" var="s_content" pipe="or" />
            <condition operation="like" column="d.user_name" var="s_user_name" pipe="or" />
            <condition operation="like" column="d.user_id" var="s_user_id" pipe="or" />
            <condition operation="like" column="d.nick_name" var="s_nick_name" pipe="or" />
            <condition operation="like" column="d.email_address" var="s_email_addres" pipe="or" />
            <condition operation="like" column="d.homepage" var="s_homepage" pipe="or" />
            <condition operation="like" column="d.tags" var="s_tags" pipe="or" />
            <condition operation="equal" column="d.is_secret" var="s_is_secret" pipe="or" />
            <condition operation="equal" column="d.member_srl" var="s_member_srl" pipe="or" />
            <condition operation="more" column="d.readed_count" var="s_readed_count" pipe="or" />
            <condition operation="more" column="d.voted_count" var="s_voted_count" pipe="or" />
            <condition operation="less" column="d.blamed_count" var="s_blamed_count" pipe="or" />
            <condition operation="more" column="d.comment_count" var="s_comment_count" pipe="or" />
            <condition operation="more" column="d.trackback_count" var="s_trackback_count" pipe="or" />
            <condition operation="more" column="d.uploaded_count" var="s_uploaded_count" pipe="or" />
            <condition operation="like_prefix" column="d.regdate" var="s_regdate" pipe="or" />
            <condition operation="like_prefix" column="d.last_update" var="s_last_update" pipe="or" />
            <condition operation="like_prefix" column="d.ipaddress" var="s_ipaddress" pipe="or" />
        </group>
        <group pipe="and">
            <condition operation="more" column="d.last_update" var="start_date" pipe="and" />
            <condition operation="less" column="d.last_update" var="end_date" pipe="and" />
        </group>
  <group pipe="and">
   <condition operation="equal" column="es.var_idx" var="var_idx" pipe="and" />
   <condition operation="like" column="es.value" var="var_value" pipe="and" />
   <condition operation="equal" column="es.document_srl" default="d.document_srl" pipe="and" />
  </group>
    </conditions>
    <navigation>
        <index var="ev.value" default="ev.value" order="order_type" />
        <list_count var="list_count" default="20" />
        <page_count var="page_count" default="10" />
        <page var="page" default="1" />
    </navigation>
</query>


 

 

제목 글쓴이 날짜
대전오피 대전오피 ⦑오피.CLUB⦒ 대전OP 대전스파 대전오피 koykoyah 2025.02.27
송탄안마【오피.CLUB】송탄 안마 송탄안마 송탄안마 songkangkong767 2025.02.27
제주오피 제주OP ⦑출장마사지안내.COM⦒ 제주휴게텔 제주오피 제주오피 koykoyah 2025.02.27
강북안마【오피.CLUB】강북 안마 강북안마 강북안마 songkangkong767 2025.02.27
목포오피 ⦑출장마사지안내.COM⦒ 목포OP 목포오피 목포출장샵 목포오피 koykoyah 2025.02.27
군산안마【출장안마사이트.COM】군산안마 군산 안마 군산안마 songkangkong767 2025.02.27
역삼오피 ⦑오피사이트.NET⦒ 역삼OP 역삼오피 역삼출장샵 역삼오피 koykoyah 2025.02.27
답십리스웨디시【출장마사지안내.COM】답십리 스웨디시 답십리스웨디시 답십리스웨디시 songkangkong767 2025.02.27
평촌오피 ⦑오피.CLUB⦒ 평촌오피 평촌OP 평촌건마 평촌오피 koykoyah 2025.02.27
건대안마【출장안마사이트.COM】건대1인샵 건대스웨디시 건대마사지 songkangkong767 2025.02.27
서면오피 ⦑오피쓰.COM⦒ 서면오피 서면OP 서면건마 서면오피 koykoyah 2025.02.27
제주도안마【출장안마사이트.COM】제주도1인샵 제주도스웨디시 제주도마사지 songkangkong767 2025.02.27
부평오피 ⦑오피.CLUB⦒ 부평오피 부평출장마사지 부평오피 부평OP koykoyah 2025.02.27
광주스웨디시【오피.CLUB】광주마사지 광주안마 광주1인샵 songkangkong767 2025.02.27
제주도오피 제주도오피 ⦑오피.CLUB⦒ 제주도OP 제주도스파 제주도오피 koykoyah 2025.02.27
건대1인샵【출장안마사이트.COM】건대안마 건대스웨디시 건대마사지 songkangkong767 2025.02.27
신촌오피 ⦑오피사이트.NET⦒ 신촌마사지 신촌오피 신촌오피 신촌OP koykoyah 2025.02.27
충주마사지【오피.CLUB】충주 마사지 충주마사지 충주마사지 songkangkong767 2025.02.27
세종오피 ⦑출장안마사이트.COM⦒ 세종오피 세종OP 세종건마 세종오피 koykoyah 2025.02.27
신림1인샵【오피쓰주소.COM】신림안마 신림마사지 신림스웨디시 songkangkong767 2025.02.27