<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
	<channel>
				<title><![CDATA[크로스 캘린더 관련 다시 문의 드립니다.]]></title>
		<link>https://www.cosmosfarm.com/threads/rss/document/38132</link>
		<description><![CDATA[<h1>"원래 질문은 아래 내용입니다"</h1>

<p> </p>

<p>안녕하세요</p>

<p>크로스 캘린더 스킨 구매해서 사용하고 있는데요</p>

<p>1개의 사이트에서</p>

<p>해당 스킨을 FTP에 업로드해서 사용하고 있습니다.</p>

<p>1개만 설치했을 때는 정상적으로 이용이 가능한데,</p>

<p>홈페이지 내 캘린더를 2개 두고 싶고, 각 캘린더 마다 스킨을 좀 커스터마이징을 해야 되는 상황입니다.</p>

<p> </p>

<p>그래서 기존 스킨 폴더명 cross-calendar 과 cross-calendar2를 각각 FTP에 업로드해서..</p>

<p>게시판 생성 후 cross-calendar2 스킨을 적용하니 HTTP ERROR 500이 나옵니다. </p>

<p> </p>

<p>이렇게 사용하면 안되는건가요? </p>

<p>1개 사이트에 캘린더를 2개 사용할건데 (각 캘린더 마다 커스터마이징이 필요해요)</p>

<p>다른 방법이 있을까요?</p>

<p> </p>

<p> </p>

<h1>답변 주신 내용은 아래와 같은데요</h1>

<p> </p>

<p>안녕하세요~^^</p>

<p>KBoard 게시판 스킨을 커스텀하시려면</p>

<p>말씀하신 것처럼 기존 스킨을 복사해서 작업하시는 것을 권장드립니다.</p>

<p> </p>

<p>기존 스킨이 /wp-content/plugins/kboard/skin/cross-calendar 이런 식으로 적용되어 있다면</p>

<p>해당 스킨을 복사한 후</p>

<p>/wp-content/plugins/kboard/skin/cross-calendar1 이런 식으로 적용해주시면 됩니다.</p>

<p> </p>

<p>HTTP ERROR 500 메시지가 표시되는 원인은</p>

<p>올려주신 내용만으로는 원인을 파악하기 어렵습니다.</p>

<p>정확한 원인을 파악하기 위해</p>

<p>디버그 모드를 활성화해서 에러 메시지를 표시하는지 확인해보시겠어요?</p>

<p><a href="https://blog.naver.com/PostView.nhn?blogId=chan2rrj&amp;logNo=221223664194" target="_blank">워드프레스 에러 확인하기 - 디버그 모드 활성화 방법</a></p>

<p>고맙습니다.</p>

<p> </p>

<h1>추가적인 질문은 아래와 같습니다.</h1>

<p> </p>

<p> </p>

<p>말씀해주신 내용처럼 폴더명을 다르게 이름 짓고 FTP 에 올리고..</p>

<p>게시판 생성 후 새로 이름을 지정한 스킨으로 선택을 하면</p>

<p>HTTP error 500 이 뜹니다..그리고 해당 사이트 접속이 아무곳도 안됩니다.</p>

<p>그리고 다시 FTP 들어가서 해당 스킨 삭제하면 다시 정상적으로 접속이 가능해지고요..</p>

<p> </p>

<p>기존에 다른 스킨 같은 경우에도 이런식으로 하고 문제가 없었는데,</p>

<p>크로스 캘린더만 이런 현상이 발생합니다.</p>

<p> </p>

<p>구체적인 현상을 말씀드렸으니,,,답변 주시면 감사하겠습니다.</p>]]></description>
		<copyright>Copyright 2026, 코스모스팜</copyright>
				<item>
			<title><![CDATA[고맙습니다 해결했습니다 짱입니다.]]></title>
			<link>https://www.cosmosfarm.com/threads/document/38204</link>
			<description><![CDATA[<p>고맙습니다 해결했습니다 짱입니다.</p>]]></description>
			<author>GN</author>
			<pubDate>Wed, 30 Oct 2019 09:15:47 +0000</pubDate>
			<category>KBoard</category>
		</item>
				<item>
			<title><![CDATA[안녕하세요~^^

KBoard 크로스 캘린더 스킨을 복사하여 작업할 경우

PHP 함수명 중복 문제가 발생하는 ...]]></title>
			<link>https://www.cosmosfarm.com/threads/document/38143</link>
			<description><![CDATA[<p>안녕하세요~^^</p>

<p><a href="https://www.cosmosfarm.com/wpstore/product/kboard-cross-calendar-skin" target="_blank">KBoard 크로스 캘린더 스킨</a>을 복사하여 작업할 경우</p>

<p>PHP 함수명 중복 문제가 발생하는 것을 확인하여 개선하여 업데이트했습니다.</p>

<p>최신 버전으로 업데이트하신 후 스킨을 복사해서 작업해보시겠어요?</p>

<p> </p>

<p>KBoard 스킨 업데이트 방법은</p>

<p>워드프레스 관리자 -&gt; 스토어 메뉴에서 <strong>설치하기</strong> 버튼을 누르시면 완료됩니다.</p>

<p>아래 링크도 참고해보시겠어요?</p>

<p><a href="https://blog.naver.com/PostView.nhn?blogId=chan2rrj&amp;logNo=221219016403" target="_blank">KBoard(케이보드) 게시판 스킨과 플러그인 설치 방법</a></p>

<p> </p>

<p>만약, 업데이트를 할 상황이 아니시라면</p>

<p>FTP로 접속해서 /wp-content/plugins/kboard/skin/사용중인스킨/functions.php 파일의 코드를</p>

<p>아래의 코드로 교체해보세요.</p>

<pre>
<code class="language-php">&lt;?php
if(!defined('ABSPATH')) exit;

if(!defined('KBOARD_CROSS_CALENDAR_VERSION')){
	define('KBOARD_CROSS_CALENDAR_VERSION', '1.6');
}

load_plugin_textdomain('kboard-cross-calendar', false, dirname(plugin_basename(__FILE__)) . '/languages');

if(!function_exists('kboard_calendar_latest_template')){
	add_action('template_redirect', 'kboard_calendar_latest_template');
	function kboard_calendar_latest_template(){
		if(isset($_GET['kboard_calendar_latest_template']) &amp;&amp; $_GET['kboard_calendar_latest_template'] == 'calendar'){
			$board_id = isset($_GET['kboard_calendar_latest_board_id'])?intval($_GET['kboard_calendar_latest_board_id']):'';
			$board_url = isset($_GET['kboard_calendar_latest_board_url'])?esc_url($_GET['kboard_calendar_latest_board_url']):'';
			
			unset($_GET['kboard_calendar_latest_template']);
			unset($_GET['kboard_calendar_latest_board_id']);
			unset($_GET['kboard_calendar_latest_board_url']);
			unset($_GET['kboard_calendar_latest_type']);
			
			echo kboard_latest_shortcode(array('id'=&gt;$board_id, 'url'=&gt;$board_url));
			exit;
		}
	}
}

if(!function_exists('kboard_get_calendar_year')){
	function kboard_get_calendar_year(){
		static $calendar_year;
		if($calendar_year=== null){
			$calendar_year = isset($_GET['kboard_calendar_year'])?intval($_GET['kboard_calendar_year']):date('Y', current_time('timestamp'));
		}
		return $calendar_year;
	}
}

if(!function_exists('kboard_get_calendar_month')){
	function kboard_get_calendar_month(){
		static $calendar_month;
		if($calendar_month=== null){
			$calendar_month = isset($_GET['kboard_calendar_month'])?intval($_GET['kboard_calendar_month']):date('m', current_time('timestamp'));
		}
		return $calendar_month;
	}
}

if(!function_exists('kboard_get_calendar_latest_year')){
	function kboard_get_calendar_latest_year(){
		static $calendar_latest_year;
		if($calendar_latest_year === null){
			$calendar_latest_year = isset($_GET['kboard_calendar_latest_year'])?intval($_GET['kboard_calendar_latest_year']):date('Y', current_time('timestamp'));
			unset($_GET['kboard_calendar_latest_year']);
		}
		return $calendar_latest_year;
	}
}

if(!function_exists('kboard_get_calendar_latest_month')){
	function kboard_get_calendar_latest_month(){
		static $calendar_latest_month;
		if($calendar_latest_month === null){
			$calendar_latest_month = isset($_GET['kboard_calendar_latest_month'])?intval($_GET['kboard_calendar_latest_month']):date('m', current_time('timestamp'));
			unset($_GET['kboard_calendar_latest_month']);
		}
		return $calendar_latest_month;
	}
}

if(isset($_GET['kboard_calendar_type']) &amp;&amp; ($_GET['kboard_calendar_type'] == 'calendar' || $_GET['kboard_calendar_type'] == 'list')){
	setcookie('kboard_calendar_type', $_GET['kboard_calendar_type'], current_time('timestamp') + (3600*24*365), COOKIEPATH, COOKIE_DOMAIN, is_ssl(), true);
	$GLOBALS['kboard_calendar_type'] = $_GET['kboard_calendar_type'];
}
else if(isset($_COOKIE['kboard_calendar_type']) &amp;&amp; ($_COOKIE['kboard_calendar_type'] == 'calendar' || $_COOKIE['kboard_calendar_type'] == 'list')){
	$GLOBALS['kboard_calendar_type'] = $_COOKIE['kboard_calendar_type'];
}
else{
	$GLOBALS['kboard_calendar_type'] = 'calendar';
}

if(!function_exists('kboard_get_calendar_type')){
	function kboard_get_calendar_type(){
		if(kboard_keyword()){
			return 'search';
		}
		return $GLOBALS['kboard_calendar_type'];
	}
}

if(isset($_GET['kboard_calendar_latest_type']) &amp;&amp; ($_GET['kboard_calendar_latest_type'] == 'calendar' || $_GET['kboard_calendar_latest_type'] == 'list')){
	setcookie('kboard_calendar_latest_type', $_GET['kboard_calendar_latest_type'], current_time('timestamp') + (3600*24*365), COOKIEPATH, COOKIE_DOMAIN, is_ssl(), true);
	$GLOBALS['kboard_calendar_latest_type'] = $_GET['kboard_calendar_latest_type'];
}
else if(isset($_COOKIE['kboard_calendar_latest_type']) &amp;&amp; ($_COOKIE['kboard_calendar_latest_type'] == 'calendar' || $_COOKIE['kboard_calendar_latest_type'] == 'list')){
	$GLOBALS['kboard_calendar_latest_type'] = $_COOKIE['kboard_calendar_latest_type'];
}
else{
	$GLOBALS['kboard_calendar_latest_type'] = 'calendar';
}

if(!function_exists('kboard_get_calendar_latest_type')){
	function kboard_get_calendar_latest_type(){
		return $GLOBALS['kboard_calendar_latest_type'];
	}
}

if(!function_exists('kboard_get_calendar_day_class')){
	function kboard_get_calendar_day_class($calendar_start_day, $cell_index, $now_day_count, $last_day, $year, $month){
		$class = 'calendar-column-day';
		if($calendar_start_day &lt;= $cell_index &amp;&amp; $now_day_count &lt;= $last_day){
			switch(date("w", mktime(0, 0, 0, $month, $now_day_count, $year))){
				case '6': $class = 'calendar-column-saturday'; break;
				case '0': $class = 'calendar-column-sunday'; break;
			}
		}
		else if($cell_index &lt; $calendar_start_day || $cell_index &gt;= $last_day){
			$class = 'calendar-column-pre-next-day';
		}
		return $class;
	}
}

if(!function_exists('kboard_get_calendar_day_of_the_week')){
	function kboard_get_calendar_day_of_the_week($day_of_the_week){
		$class = 'kboard-cross-calendar-weekday';
		switch($day_of_the_week){
			case '6': $class = 'calendar-column-saturday'; break;
			case '0': $class = 'calendar-column-sunday'; break;
		}
		return $class;
	}
}

if(!function_exists('kboard_get_calendar_key')){
	function kboard_get_calendar_key($calendar_start_day, $cell_index, $now_day_count, $last_day, $year, $month, $prev_day_count, $next_day_count){
		$prev_month = $month -1;
		$next_month = $month +1;
		
		if($calendar_start_day &lt;= $cell_index &amp;&amp; $now_day_count &lt;= $last_day){
			$key = date('Y-m-d', strtotime("{$year}-{$month}-{$now_day_count}"));
			return $key;
		}
		else if($cell_index &lt; $calendar_start_day){
			$key = date('Y-m-d', strtotime("{$year}-{$prev_month}-{$prev_day_count}"));
			return $key;
		}
		else if($cell_index &gt;= $last_day){
			$key = date('Y-m-d', strtotime("{$year}-{$next_month}-{$next_day_count}"));
			return $key;
		}
	}
}

if(!function_exists('kboard_get_calendar_ymd')){
	function kboard_get_calendar_ymd($calendar_start_day, $cell_index, $now_day_count, $last_day, $year, $month, $prev_day_count, $next_day_count){
		if($calendar_start_day &lt;= $cell_index &amp;&amp; $now_day_count &lt;= $last_day){
			return date('Y-m-d', mktime(0, 0, 0, $month, $now_day_count, $year));
		}
		else if($cell_index &lt; $calendar_start_day){
			return date('Y-m-d', mktime(0, 0, 0, $month-1, $prev_day_count, $year));
		}
		else if($cell_index &gt;= $last_day){
			return date('Y-m-d', mktime(0, 0, 0, $month+1, $next_day_count, $year));
		}
	}
}

if(!function_exists('kboard_get_calendar_white_background_style')){
	function kboard_get_calendar_white_background_style($color){
		if(!$color || $color == '#ffffff'){
			return 'color: #000000;';
		}
		return '';
	}
}

if(!function_exists('kboard_get_calendar_type_array')){
	function kboard_get_calendar_type_array($calendar_event_rows){
		$event_table_item_list = array();
		ksort($calendar_event_rows);
		$event_keys = array_keys($calendar_event_rows);
		foreach($event_keys as $key){
			foreach($calendar_event_rows[$key] as $event_table_item){
				$index = -1;
				for($start_date = $event_table_item-&gt;option-&gt;start_date; $start_date&lt;=$event_table_item-&gt;option-&gt;end_date; $start_date=date('Y-m-d', strtotime("{$start_date} +1 day"))){
					if($index &gt;= 0){
						$event_table_item_list[$start_date][$index] = $event_table_item;
						for($i=0; $i&lt;$index; $i++){
							if(isset($event_table_item_list[$start_date][$i]) &amp;&amp; $event_table_item_list[$start_date][$i] != 'empty'){
								continue;
							}
							else{
								$event_table_item_list[$start_date][$i] = 'empty';
							}
						}
					}
					else if(!isset($event_table_item_list[$start_date])){
						$index = 0;
						$event_table_item_list[$start_date][$index] = $event_table_item;
					}
					else{
						$push = false;
						foreach($event_table_item_list[$start_date] as $key=&gt;$temp){
							if(isset($temp-&gt;uid) &amp;&amp; $temp-&gt;uid){
								continue;
							}
							else if($temp == 'empty'){
								$event_table_item_list[$start_date][$key] = $event_table_item;
								$push = true;
								break;
							}
						}
						if(!$push){
							$index = count($event_table_item_list[$start_date]);
							$event_table_item_list[$start_date][$index] = $event_table_item;
						}
					}
				}
			}
		}
		return $event_table_item_list;
	}
}

if(!function_exists('kboard_get_calendar_list_type_array')){
	function kboard_get_calendar_list_type_array($calendar_event_rows){
		$event_item_list = array();
		ksort($calendar_event_rows);
		$event_keys = array_keys($calendar_event_rows);
		foreach($event_keys as $key){
			foreach($calendar_event_rows[$key] as $event_item){
				for($start_date = $event_item-&gt;option-&gt;start_date; $start_date&lt;=$event_item-&gt;option-&gt;end_date; $start_date=date('Y-m-d', strtotime("{$start_date} +1 day"))){
					$event_item_list[$start_date][] = $event_item;
				}
			}
		}
		return $event_item_list;
	}
}</code></pre>

<p>고맙습니다.</p>]]></description>
			<author>스레드봇</author>
			<pubDate>Tue, 29 Oct 2019 00:49:03 +0000</pubDate>
			<category>KBoard</category>
		</item>
			</channel>
</rss>