list.skin.php 에 관한 문제
본문
list.skin.php 하단에 버튼을 만들어 주려고 하는데 skin > board > list.skin.php 에서 수정을 해주어야 버튼이 생기더라고요.
관리자로 로그인 해서 설정 > 목록설정 : apply 로 해주고 skin > board > 에 apply 폴더 만들어 주었는데 이 폴더 내에서 list.skin.php 를 수정해줘도 변화가 없네요. 저는 개별 목록 페이지를 만들어 주고 싶어서 appy 페이지에는 버튼이 있고 free 페이지에는 버튼이 없게 만들어 주고 싶거든요.
그런데 apply > list.skin.php 파일 내에
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.$list_skin_url.'/list.css" media="screen">', 0);
$list_skin_file = (G5_IS_MOBILE) ? 'list.skin.mobile.php' : 'list.skin.pc.php';
include_once($list_skin_path.'/'.$list_skin_file);
?>
이렇게 코드가 있는데 어떻게 해야 개별 list 스킨을 만들어 줄 수 있나요?
답변 6
스킨 하나 더 만들어서, 해당 스킨에 넣어주고 게시판관리에서 해당스킨 선택하는 방법도 있어요.
* list.skin.php
<?php if ($bo_table == 'apply') { ?>
<button type="button">버튼</button>
<?php } ?>
$list_skin_path 이경로를 출력하셔서
해당폴더 안에 list.skin.mobile.php , list.skin.pc.php 각각 만드시면 될듯 합니다.
<button id="myBtn" type="button">버튼</button>
위와 같다고 한다면 리소스가 큰 것 같지만 나중에 내 손발이 편하려면 hook 을 하나 만드심이...
extend - user.config.php 에 아래의 hook 을 만드세요.
----------
add_event('tail_sub', 'btn_remove');
function btn_remove() {
global $wr_id, $board;
if (basename($_SERVER['PHP_SELF']) == "board.php" && $wr_id == 0) {
if ($board['bo_table'] == 'free') {
echo "<script>document.querySelector('#myBtn').remove();</script>";
}
}
}
----------
그리고 나중 버튼이 안 보이게 해야할 게시판을 만들 때마다 이프문의 조건을 추가해 주면 됩니다.
if ($board['bo_table'] == 'free' || $board['bo_table'] == 'free2' || $board['bo_table'] == 'free3')
!-->개별 목록 페이지가 뭔가요?