계층형 카테고리 1차,2차 합 199개까지 생성후 200개째 생성에서 더 안만들어지네요.
해결 방법 부탁드립니다.
계층형 카테고리 개수 제한이 없는걸로 알아서 설치를 했는데요.
오늘 하루 종일 삽질중인데 도움부탁드립니다.
감사합니다. 제한없이 잘생성되고 저장버튼 클릭해서 잘리지 않네요. 너무 수고하셨습니다. 감사합니다.
안녕하세요.
변경 사항 저장 버튼 클릭 시 계층형 카테고리가 잘려서 표시된다면
FTP로 접속해서 /wp-content/plugins/kboard/class/KBAdminController.class.php 파일에
아래의 코드를 지워보시겠어요?
$board->meta->tree_category = isset($_POST['tree_category']) ? serialize($_POST['tree_category']) : '';
고맙습니다.
안녕하세요.
관리자 페이지>KBoard : 게시판 관리>계층형 카테고리 화면에서는 추가 생성시에는 카테고리가 사라지는 현상이 없는데요.
게시판 관리>계층형 카테고리에서 빠져나와서 기본설정 화면의 "변경 사항 저장"을 클릭한 후 계층형 카테고리로 들어가보면 255개 이상은 날아가는 현상이 있네요...ㅠㅠ
고생하셨습니다. 감사합니다. 수정코드로 적용하니 잘되네요.
이전 댓글에 안내해드린 코드를 개선하여 해당 사이트에 적용해두었습니다.
이전 댓글의 코드도 개선하여 수정해두었습니다.
계층형 카테고리를 추가해서 확인해보시겠어요?
고맙습니다.
이메일로 워드프레스 관리자 계정과 FTP 접속 정보보냈습니다. 감사합니다.
안녕하세요.
코드 수정 후 새로 계층형 카테고리를 등록해도 문제가 발생하시는지요?
해당 문제는 저희도 직접 테스트를 해봐야 할 듯합니다.
저희 고객지원 쪽 이메일로 워드프레스 관리자 계정과 FTP 접속 정보를 보내주시면 점검해드리겠습니다.
고맙습니다.
수정후 계층카테고리가 전부 사라지는 불상사가 일어나서 원래 파일로 교체했는데 기존에 생성했던 계층카테고리는 모두 사라졌네요.
카테고리 숫자가 많다보니 시간은 걸리지만 다시 만들면 상관없긴한데 해당 게시판 상단에 아래문구 오류가 나옵니다.
Warning: Invalid argument supplied for foreach() in /host/home2/detems/html/wp-content/plugins/kboard/class/KBoardTreeCategory.class.php on line 138
게시판 설정에서 기본 카테고리로 변경후 저장하고 다시 계층형 카테고리로 변경후 저장하니 위의 문구는 사라졌네요.
저희 쪽에서 내부적으로 테스트해보니
KBoard 플러그인 쪽에서 별도로 제한하고 있는 건 아니지만
계층형 카테고리의 개수가 200개가 넘어갈 경우 문제가 있는 듯합니다.
우선, 임시방편으로 FTP로 접속해서 /wp-content/plugins/kboard/pages/kboard_setting.php 파일에
아래의 코드를 찾아서
jQuery.post(ajaxurl, {action:'kboard_tree_category_sortable', board_id:board_id, tree_category_serialize:tree_category_serialize}, function(data){
jQuery('.sortable li').remove();
jQuery('.sortable').append(data.table_body);
});
아래의 코드로 교체해보시겠어요?
tree_category_serialize = JSON.stringify(tree_category_serialize);
jQuery.post(ajaxurl, {action:'kboard_tree_category_sortable', board_id:board_id, tree_category_serialize:tree_category_serialize}, function(data){
jQuery('.sortable li').remove();
jQuery('.sortable').append(data.table_body);
});
/wp-content/plugins/kboard/class/KBAdminController.class.php 파일에
아래의 코드를 찾아서
$tree_category_serialize = isset($_POST['tree_category_serialize'])?$_POST['tree_category_serialize']:'';
$board_id = isset($_POST['board_id'])?$_POST['board_id']:'';
$board = new KBoard($board_id);
$category = new KBoardTreeCategory();
$category->setBoardID($board_id);
$sortable_category = array();
foreach($tree_category_serialize as $item){
if(isset($item['id']) && $item['id']){
foreach($category->tree_category as $key=>$value){
if($item['id'] == $value['id']){
$value['parent_id'] = $item['parent_id'];
$sortable_category[] = $value;
}
}
}
}
아래의 코드로 교체해보세요.
$_POST = stripslashes_deep($_POST);
$tree_category_serialize = isset($_POST['tree_category_serialize'])?json_decode($_POST['tree_category_serialize']):'';
$board_id = isset($_POST['board_id'])?$_POST['board_id']:'';
$board = new KBoard($board_id);
$category = new KBoardTreeCategory();
$category->setBoardID($board_id);
$sortable_category = array();
foreach($tree_category_serialize as $item){
if(isset($item->id) && $item->id){
foreach($category->tree_category as $key=>$value){
if($item->id == $value['id']){
$value['parent_id'] = $item->parent_id;
$sortable_category[] = $value;
}
}
}
}
빠른 시일 내에 KBoard 플러그인을 개선하여 업데이트하도록 하겠습니다.
고맙습니다.
board_board_meta 테이블의 value 컬럼을 확인결과 속성이 이미 longtext 되어 있어서 호스팅업체에 문의 결과
"문의 내용이 명확하게 확인되지 않고 있습니다.
서버상에서 필요한 사항을 남겨주시면 확인 후 답변 드리도록 하겠습니다.
데이터베이스 관리에 있어 사용자 설정 영역에 대한 관리 및 이용 부분에 대해서는 상세한 확인 및 답변이 어려운 점 양해 바랍니다."
이렇게 답변이 왔는데요.
호스팅업체에 서버상에서 필요한 사항을 어떻게 문의드려야 하는지 막연한데요. 어느부분을 확인해달라고 해야하는지 알수 있을까요?
안녕하세요~^^
계층형 카테고리 개수(길이)는 KBoard(케이보드) 쪽에서 제한하지 않고 있습니다.
서버 문제이거나 DB에서 컬럼의 최대 길이가 제한되어 있을 수 있습니다.
가능하다면 DB 접속해서 kboard_board_meta 테이블의 value 컬럼의 속성이
longtext로 되어있는지 확인해보시겠어요?
만약, longtext로 되어있다면 서버 쪽 문제일 수도 있으니
서버 관리자나 호스팅 업체에도 문의를 해보셔야 할 듯합니다.
고맙습니다.