빌더 좌측메뉴의 링크를 임의로 바구거나 테이블생성 없이 메뉴를 추가할 수 있을까요
본문
그누보드4 좌측에 우측 메뉴가 있는 빌더를 사용 중입니다.
처음 빌더 설치 후 그룹을 만들고 테이블을 만들면 메뉴가 좌측에 자동으로 생기는데 이 메뉴(테이블)의 링크를 임의로 지정해할 수 있는 방법이 있을까요?
예를 들어 그룹 생성 후 테이블 1을 만들고 테이블 1의 링크를 http://naver.com로 지정이 가능한가요?
아래는 소스입니다.
-------------------------------------------------------------
<?php
$text_count = 12; // 게시판 글자수 지정하세요.
$group_all = 1; // 0 또는 1 을 입력하여 그룹 전체 표시 또는 접속된 페이지의 그룹만 표시 할 지를 정합니다.(0 = 해당그룹 1 = 전체그룹)
$new_time = 24; // 새 게시물 조회 시간.( 24시간 = 하루 )
$one_item = 1; // 0 또는 1을 입력하여 한줄에 하나의 보드이름만 출력할지 설정(0 = 한줄에 여러보드이름나열 1 = 한줄에 보드 하나 만출력)
//$group_view = 1; // 0 또는 1 을 입력하여 그룹을 표시할지 안 할지를 정합니다.(0 = 출력안함 1 = 출력함)
//$middle_view = 0; // 0 또는 1 을 입력하여 중간그룹을 표시할지 안 할지를 정합니다.(0 = 출력안함 1 = 출력함)
$cal_time = time()-($new_time * 60 * 60);
$cal_time = date('Y-m-d H:i:s', $cal_time);
$mb_strlen_chk = function_exists('mb_strlen');
$ch_set = $g4['charset'];
if(!$ch_set)$ch_set = 'utf-8';
function skm_strlen($wd, $len=10, $suffix='…', $charset='utf-8'){
if('utf-8'==strtolower($charset)){$cha_c = 3;}else{$cha_c = 2;}
$wd = htmlspecialchars_decode($wd, ENT_QUOTES);
$wd = str_split($wd);
$cnt = count($wd);
$wd_cnt=0;
$ch_wd = '';
for($i=0;$i<$cnt;$i++){
if(ord($wd[$i]) > 127){
$wd_cnt++;
}else{
$wd_cnt+=$cha_c;
}
$st_len = $wd_cnt / $cha_c;
if($st_len <= $len) $ch_wd .= $wd[$i];
}
if($st_len > $len) $ch_wd .= $suffix;
$ch_wd = htmlspecialchars($ch_wd, ENT_QUOTES);
return $ch_wd;
}
function bo_new_count($bo, $time_h){
global $g4;
$bf_time = date('Y-m-d H:i:s', (time() - ( 3600 * $time_h )));
$sql = " select count('wr_id') as cnt from ".$g4['board_new_table']."
where bo_table = '".$bo."'
and wr_id = wr_parent
and bn_datetime > '".$bf_time."'
group by bo_table ;";
$result = sql_fetch($sql);
return $result['cnt'];
}
?>
<div id="skm_left_menu"><!-- 왼쪽 메뉴 시작 -->
<h3 class="title">Menu</h3>
<?php
/*
if(!$_GET['bo_table'])$_GET['bo_table'] = '';
$sql_gr = " select gr_id from ".$g4['board_table']." where bo_table = '".$_GET['bo_table']."' limit 1 ";
$gr_sql = sql_fetch($sql_gr);
$gr_id_cho = $gr_sql['gr_id'];
*/
$sql = " select gr_id, gr_subject from ".$g4['group_table']." order by gr_id ";
$result = sql_query($sql);
$row = array();
while($row = sql_fetch_array($result)){
$sql_bo = " select bo_table, bo_subject from ".$g4['board_table']." where gr_id = '".$row['gr_id']."' order by bo_order_search asc"; //메뉴순서 컬럼 bo_order_search 기준으로 정렬
$result_bo = sql_query($sql_bo);
if($group_all || !$_GET['bo_table'] || $row['gr_id'] == $gr_id){
// latest(스킨, 게시판아이디, 출력라인, 글자수);
echo '<div>';
echo '<ul class="left_group_ul"><li class="left_group_li">';
//echo '<a href="'.$g4['bbs_path'].'/group.php?gr_id='.$row['gr_id'].'">'.skm_strlen($row['gr_subject'], $text_count).'</a>';
echo '<a href="#">'.skm_strlen($row['gr_subject'], $text_count).'</a>';
echo '</li><li><ul class="left_bo_ul">';
if(!$one_item) echo '<li style="padding:15px;">';
$row_bo = array();
$cnt_pipe = 0;
while($row_bo = sql_fetch_array($result_bo)){
$bo_n_cnt = bo_new_count($row_bo['bo_table'], $new_time);
if($one_item){
echo '<li class="left_bo_li">';
}else{
echo '<span style="display:inline-block; padding:2px;">';
if($cnt_pipe > 0) echo '|';
}
if($row_bo['bo_table']==$bo_table){
echo '<a href="'.$g4['bbs_path'].'/board.php?bo_table='.$row_bo['bo_table'].'" style="background-color:#e2eaf9;">'.skm_strlen($row_bo['bo_subject'], $text_count);
}else{
echo '<a href="'.$g4['bbs_path'].'/board.php?bo_table='.$row_bo['bo_table'].'">'.skm_strlen($row_bo['bo_subject'], $text_count);
}
//echo '<a href="#">'.skm_strlen(menu, 5);
if($bo_n_cnt){
echo '<span style="color:red;">(' .$bo_n_cnt . ')</span>';
}
echo '</a>';
if($one_item){echo '</li>';}else{echo '</span>';}
$cnt_pipe++;
}
if(!$one_item){ echo '</li>';}
echo '</ul></li></ul>';
echo '</div>';
}
}
?>
</div><!-- 왼쪽 메뉴 끝 -->
-------------------------------------------------------------
사용 중인 빌더 좌측 메뉴 입니다.
여기에 테이블 생성 없이 임의로 메뉴를 끼워 넣을 수 있을까요?
답변 1
도중에 넣기보다는 맨앞과 맨뒤
echo '<a href='#'>메뉴명</a>';
넣어서 임의로 메뉴를 끼워넣을수 있고
자동추출되는것을 아에 지울려면 해당 html코드 제외한 함수들은 지우시고 쓰시면됩니다