diff --git a/adm/config_form.php b/adm/config_form.php
index 0b387bf34..75aca7329 100644
--- a/adm/config_form.php
+++ b/adm/config_form.php
@@ -135,6 +135,11 @@ if (!isset($config['cf_syndi_token'])) {
ADD `cf_syndi_token` VARCHAR(255) NOT NULL AFTER `cf_add_meta` ", true);
}
+if (!isset($config['cf_syndi_except'])) {
+ sql_query(" ALTER TABLE `{$g5['config_table']}`
+ ADD `cf_syndi_except` TEXT NOT NULL AFTER `cf_syndi_token` ", true);
+}
+
if(!isset($config['cf_sms_use'])) {
sql_query(" ALTER TABLE `{$g5['config_table']}`
ADD `cf_sms_use` varchar(255) NOT NULL DEFAULT '' AFTER `cf_cert_limit`,
@@ -511,10 +516,18 @@ if ($config['cf_icode_id'] && $config['cf_icode_pw']) {
|
+ 경고) curl이 지원되지 않아 네이버 신디케이션을 사용할수 없습니다.'); ?>
연동키는 네이버 웹마스터도구 -> 네이버 신디케이션에서 발급할 수 있습니다.') ?>
|
+
+ |
+
+ 참고로 그룹접근사용 게시판, 글읽기 권한 2 이상 게시판, 비밀글은 신디케이션 수집에서 제외됩니다.') ?>
+
+ |
+
diff --git a/adm/config_form_update.php b/adm/config_form_update.php
index 34aefaa62..db852d38b 100644
--- a/adm/config_form_update.php
+++ b/adm/config_form_update.php
@@ -54,6 +54,7 @@ $sql = " update {$g5['config_table']}
cf_analytics = '{$_POST['cf_analytics']}',
cf_add_meta = '{$_POST['cf_add_meta']}',
cf_syndi_token = '{$_POST['cf_syndi_token']}',
+ cf_syndi_except = '{$_POST['cf_syndi_except']}',
cf_member_skin = '{$_POST['cf_member_skin']}',
cf_use_homepage = '{$_POST['cf_use_homepage']}',
cf_req_homepage = '{$_POST['cf_req_homepage']}',
diff --git a/lib/naver_syndi.lib.php b/lib/naver_syndi.lib.php
index 5bce8c2ab..7964c9305 100644
--- a/lib/naver_syndi.lib.php
+++ b/lib/naver_syndi.lib.php
@@ -14,8 +14,11 @@ function naver_syndi_ping($bo_table, $wr_id)
// 토큰의 길이는 112 글자입니다.
if (strlen($token) != 112) return -1;
+ // 신디케이션 수집 제외게시판
+ if (preg_match('#^('.$config['cf_syndi_except'].')$#', $bo_table)) return -2;
+
// curl library 가 지원되어야 합니다.
- if (!function_exists('curl_init')) return -2;
+ if (!function_exists('curl_init')) return -3;
$ping_auth_header = "Authorization: Bearer " . $token;
$ping_url = urlencode( G5_SYNDI_URL . "/ping.php?bo_table={$bo_table}&wr_id={$wr_id}" );
@@ -29,11 +32,11 @@ function naver_syndi_ping($bo_table, $wr_id)
CURLOPT_HTTPHEADER => array("Host: apis.naver.com", "Pragma: no-cache", "Accept: */*", $ping_auth_header)
);
+ //print_r2($ping_client_opt); exit;
$ping = curl_init();
curl_setopt_array($ping, $ping_client_opt);
$response = curl_exec($ping);
curl_close($ping);
- //print_r2($ping_client_opt); exit;
return $response;
}
diff --git a/plugin/syndi/ping.php b/plugin/syndi/ping.php
index 92635a7ca..016afcaa0 100644
--- a/plugin/syndi/ping.php
+++ b/plugin/syndi/ping.php
@@ -10,12 +10,12 @@ if ($group['gr_use_access'])
if ($board['bo_read_level'] > 1)
die("비회원 읽기가 가능한 게시판만 신디케이션을 지원합니다.");
-if (preg_match('#^('.SYNDI_EXCEPT_TABLE.')$#', $bo_table))
- die("신디케이션에서 제외된 게시판입니다.");
-
if (strstr($write['wr_option'], 'secret'))
die("비밀글은 신디케이션을 지원하지 않습니다.");
+if (preg_match('#^('.$config['cf_syndi_except'].')$#', $bo_table))
+ die("신디케이션에서 제외된 게시판입니다.");
+
$title = htmlspecialchars($write['wr_subject']);
$author = htmlspecialchars($write['wr_name']);
$published = date('Y-m-d\TH:i:s\+09:00', strtotime($write['wr_datetime']));