XE Tips 는 제가 XE 공홈에 쓴 XE 관련 유용한 팁들입니다. 기능개선은 공홈에 안 적어둔 XE 유용 개선팁들입니다.
유용정보는 외부 검색을 통해 알아낸 소스등을 기재해둔 곳입니다.
버그 신고내역들은 XE 사용하다가 발견한 버그 패치방법들로, Core Issue 에 기록해뒀기에 XE 에 적용이 되었을 가능성이 있겠죠
제가 쓴 글들에 대해 퍼가실때는 꼭 출처를남겨주시고.. (다만 플래시뷰 기반이기에 퍼가기는조금 힘들 수 있겠죠 ^^;)
타회원의 글들도 적혀있는 출처를 같이 꼭 기재해주세요
출처 | sejin7940 |
---|
통합검색이 안 되는 현상 발생할 경우....
통합검색이 사용을 잘못하면 오류가 생기는 부분이 있네요
소스에서 이걸 감안하고 있어야하는데 Core 에서 해주질 못하네요
일단 오류가 발생한 이유는..
기존에 포함/또는 제외하겠다고 설정한 게시판 중 일부 게시판이 설정 후 삭제가 되었을때 발생합니다.
통합검색 목록에서 보시면 끝에 undifined 라고 되어있는게 있을거예요
그거때문에 통합검색 대상값이 잘못 들어가고 있어요.. ( 소스상으로는 ,, 같은 형태가 되죠 )
따라서 일단, 그 통합검색 설정에서 해당 게시판을 제거하시면 잘 될겁니다
그런데 실제 이런일들이 종종 발생할 수 있겠다 싶어서
Core 소스 수정법도 알려드릴께요 (최신 XE 에도 적용되어있지 않습니다)
modules/integration_search/integration_search.,model.php 에서
1) function getDocuments 에서
if(is_array($module_srls_list)) $module_srls_list = implode(',',$module_srls_list);
부분을 아래걸로
if(is_array($module_srls_list)) {
array_filter($module_srls_list);
$module_srls_list = implode(',',$module_srls_list);
}
2) function getComments 에서
if (count($module_srls_list) > 0) $module_srls = implode(',',$module_srls_list);
구문을
if (count($module_srls_list) > 0) {
array_filter($module_srls_list);
$module_srls = implode(',',$module_srls_list);
}
3) function _getFiles 에서
if(is_array($module_srls_list)) $module_srls = implode(',',$module_srls_list);
를
if(is_array($module_srls_list)) {
array_filter($module_srls_list);
$module_srls = implode(',',$module_srls_list);
}