메인도 팝업띄우고 특정페이지에도 팝업창을 띄우고 싶은데 어떻게 해야하나요..
초보입니다..ㅜ;ㅜ
|
답변 3개 / 댓글 29개
채택된 답변
+20 포인트
2016-06-01 (수) 16:39:29
특정 페이지(예를 들어 sub_01 페이지) 상단에
define('_SUB01_', true);
을 지정합니다.(여기에서 _SUB01_는 상수값으로 제가 임의로 지정한 것이구요. 상수는 변수와 다르게 보통 대문자로 지정합니다.)
head.php 파일에서
<?php
if(defined('_INDEX_')) { // index에서만 실행
include G5_BBS_PATH.'/newwin.inc.php'; // 팝업레이어
}
?>
코드 부분을
<?php
if(defined('_INDEX_') || defined('_SUB01_')) { // index에서만 실행
include G5_BBS_PATH.'/newwin.inc.php'; // 팝업레이어
}
?>
로 수정해 주시고요.
페이지가 추가되면 위의 형식대로 하나씩 추가해주시면 됩니다.
답변에 대한 댓글 3개
2016-06-01 (수) 17:05:47
2016-06-01 (수) 18:17:33
이런 방법도 있으니, 참고해 보세요.
답변에 대한 댓글 25개
2016-06-01 (수) 18:30:33
if($_SERVER['SCRIPT_NAME'] == "/bbs/board.php") { define('_INDEX_', true); }
2. 조건문의 script_name 을 원하는 페이지로 조절하시면 됩니다.
요기서 스크립트네임은 어떤식으로 하라는건지 이해를 못하겟어요..
2. 조건문의 script_name 을 원하는 페이지로 조절하시면 됩니다.
요기서 스크립트네임은 어떤식으로 하라는건지 이해를 못하겟어요..
2016-06-01 (수) 18:32:17
if($_SERVER['SCRIPT_NAME'] == "팝업을띄울페이지URL") { define('_INDEX_', true); }
이렇게 작성하시면 됩니다.
이렇게 작성하시면 됩니다.
2016-06-01 (수) 18:40:22
아무런변화가 없어서요..
['SCRIPT_NAME'] 하고 상관이 있는지 하구요.. ㅠ
['SCRIPT_NAME'] 하고 상관이 있는지 하구요.. ㅠ
2016-06-01 (수) 21:44:27
// 특정 페이지에 팝업 띄우기
if($_SERVER['SCRIPT_NAME'] == "/bbs/page.php?hid=free_fan") { define('_INDEX_', true); }
?>
이거구요.
일반문서로 페이지 만든거여요.
if($_SERVER['SCRIPT_NAME'] == "/bbs/page.php?hid=free_fan") { define('_INDEX_', true); }
?>
이거구요.
일반문서로 페이지 만든거여요.
2016-06-01 (수) 22:09:47
if($_SERVER['SCRIPT_NAME'] == "/bbs/page.php") { define('_INDEX_', true); }
이렇게 해 보세요.
뒤에 파라미터가 반드시 있어야 하는 상황이라면,
$_SERVER['SCRIPT_NAME'] 대신에 $_SERVER['REQUEST_URI'] 로 바꾸어서 해 보세요.
이렇게 해 보세요.
뒤에 파라미터가 반드시 있어야 하는 상황이라면,
$_SERVER['SCRIPT_NAME'] 대신에 $_SERVER['REQUEST_URI'] 로 바꾸어서 해 보세요.
2016-06-01 (수) 22:25:36
다해봤는데도 안되네요 ... 아무 반응이 없어요;..
일반문서로 페이지 만들고 모든페이지 다 테스트 해봣는데도 안되네요..
안되는건가봐요..ㅜㅜ
일반문서로 페이지 만들고 모든페이지 다 테스트 해봣는데도 안되네요..
안되는건가봐요..ㅜㅜ
2016-06-01 (수) 22:49:04
일반 문서에 common.php , head.php , tail.php 등이 인클루드 되어 있지 않나요?
그리고, 오늘하루열지않기가 되어 버렸다면, 뜨지 않을 수도 있으니, 쿠키 삭제를 해 보세요.
그리고, 오늘하루열지않기가 되어 버렸다면, 뜨지 않을 수도 있으니, 쿠키 삭제를 해 보세요.
2016-06-01 (수) 22:56:46
쿠키때문은 아니구요..
아무래도 안되지 싶어요 ㅜㅜ 하루종일 씨름하네요 ㅠㅠ
답변 주셔서 감사해요... ㅜㅜㅜㅜㅜ
아무래도 안되지 싶어요 ㅜㅜ 하루종일 씨름하네요 ㅠㅠ
답변 주셔서 감사해요... ㅜㅜㅜㅜㅜ
2016-06-01 (수) 23:45:37
아아 풀어놓았어요!
user.config.php 에는 이렇게 했습니다.
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 특정 페이지에 팝업 띄우기
if($_SERVER['SCRIPT_NAME'] == "/bbs/page.php?hid=use") { define('_INDEX_', true); }
?>
user.config.php 에는 이렇게 했습니다.
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 특정 페이지에 팝업 띄우기
if($_SERVER['SCRIPT_NAME'] == "/bbs/page.php?hid=use") { define('_INDEX_', true); }
?>
2016-06-02 (목) 00:04:02
사용방법 페이지에 팝업 적용이 되지 않은 것 같은데요..
혹시, head.php 에
include G5_BBS_PATH.'/newwin.inc.php'; // 팝업레이어
이런 코드가 있나요?
php 소스를 보지 않고는 답변을 드리기 힘들 것 같습니다.
혹시, head.php 에
include G5_BBS_PATH.'/newwin.inc.php'; // 팝업레이어
이런 코드가 있나요?
php 소스를 보지 않고는 답변을 드리기 힘들 것 같습니다.
2016-06-02 (목) 00:04:42
위에서도 코멘트 드린 내용인데요..
if($_SERVER['SCRIPT_NAME'] == "/bbs/page.php") { define('_INDEX_', true); }
이렇게 해 보세요.
if($_SERVER['SCRIPT_NAME'] == "/bbs/page.php") { define('_INDEX_', true); }
이렇게 해 보세요.
2016-06-02 (목) 00:12:21
링크주신거에 나와잇는그대로 한거에요..
user.config.php 에는 이렇게 하고
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 특정 페이지에 팝업 띄우기
if($_SERVER['SCRIPT_NAME'] == "/bbs/page.php?hid=use") { define('_INDEX_', true); }
?>
달리 또 몰 하라는건 없는데요..ㅜ.
head.php 에 include G5_BBS_PATH.'/newwin.inc.php'; // 팝업레이어 넣으니
되긴하는데요.
다른분 답변 주신것처럼 메인팝업의 닫기가 안눌리는 현상이 생겨요..ㅜ으아아아아
user.config.php 에는 이렇게 하고
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 특정 페이지에 팝업 띄우기
if($_SERVER['SCRIPT_NAME'] == "/bbs/page.php?hid=use") { define('_INDEX_', true); }
?>
달리 또 몰 하라는건 없는데요..ㅜ.
head.php 에 include G5_BBS_PATH.'/newwin.inc.php'; // 팝업레이어 넣으니
되긴하는데요.
다른분 답변 주신것처럼 메인팝업의 닫기가 안눌리는 현상이 생겨요..ㅜ으아아아아
2016-06-02 (목) 00:14:11
/bbs/page.php?hid=use 에서
?hid=use 를 빼고
/bbs/page.php 만 해 보세요.
?hid=use 를 빼고
/bbs/page.php 만 해 보세요.
2016-06-02 (목) 00:22:19
메인에..
include G5_BBS_PATH.'/newwin.inc.php'; // 팝업레이어
이게 두번 include 되는 것 같습니다..
제가 알려 드린 방법은 그누보드 기본 소스를 변경하지 않고 적용하는 방법입니다.
그누보드 원본 소스를 수정하지 말고 적용해 보세요.
include G5_BBS_PATH.'/newwin.inc.php'; // 팝업레이어
이게 두번 include 되는 것 같습니다..
제가 알려 드린 방법은 그누보드 기본 소스를 변경하지 않고 적용하는 방법입니다.
그누보드 원본 소스를 수정하지 말고 적용해 보세요.
2016-06-02 (목) 00:36:13
위에 port 님 방법과, 제가 알려드린 방법에서, 동일한 문제가 발생하는 것인가요?
그런 것으로 보아서는, 팝업 기능 적용전 소스에 문제가 있어 보입니다.
php 소스를 봐야 알 수 있을 것 같습니다.
그런 것으로 보아서는, 팝업 기능 적용전 소스에 문제가 있어 보입니다.
php 소스를 봐야 알 수 있을 것 같습니다.
2016-06-02 (목) 00:44:21
현재 초기상태라 수정한것이 없구요..
user.config.php 에 소스만 추가했고.
다른건 만지지 않았어요. 원래상태입니다.
head.php는 이거에요.
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
if(!defined('THEMA_PATH')) {
include_once(G5_LIB_PATH.'/apms.thema.lib.php');
}
if(USE_G5_THEME && defined('G5_THEME_PATH')) {
require_once(G5_THEME_PATH.'/head.php');
return;
}
// Page Iframe Modal
if(APMS_PIM) {
include_once(G5_PATH.'/head.sub.php');
@include_once(THEMA_PATH.'/head.sub.php');
return;
}
//Change Mode
$as_href['pc_mobile'] = (G5_DEVICE_BUTTON_DISPLAY) ? get_device_change_url() : '';
// Head Sub
include_once(G5_PATH.'/head.sub.php');
include_once(G5_LIB_PATH.'/latest.lib.php');
$page_title = apms_fa($page_title);
$page_desc = apms_fa($page_desc);
$menu = apms_auto_menu();
$menu = apms_multi_menu($menu, $at['id'], $at['multi']);
if($is_member) thema_member();
//Statistics
$stats = apms_stats();
if($is_main && !$hid && !$gid ) {
$newwin_path = (G5_IS_MOBILE) ? G5_MOBILE_PATH : G5_BBS_PATH;
@include_once ($newwin_path.'/newwin.inc.php'); // 팝업레이어
}
if(IS_YC) {
if(IS_SHOP) {
if(file_exists(THEMA_PATH.'/shop.head.php')) {
include_once(THEMA_PATH.'/shop.head.php');
} else {
include_once(THEMA_PATH.'/head.php');
}
} else {
if(file_exists(THEMA_PATH.'/head.php')) {
include_once(THEMA_PATH.'/head.php');
} else {
include_once(THEMA_PATH.'/shop.head.php');
}
}
} else {
include_once(THEMA_PATH.'/head.php');
}
?>
user.config.php 에 소스만 추가했고.
다른건 만지지 않았어요. 원래상태입니다.
head.php는 이거에요.
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
if(!defined('THEMA_PATH')) {
include_once(G5_LIB_PATH.'/apms.thema.lib.php');
}
if(USE_G5_THEME && defined('G5_THEME_PATH')) {
require_once(G5_THEME_PATH.'/head.php');
return;
}
// Page Iframe Modal
if(APMS_PIM) {
include_once(G5_PATH.'/head.sub.php');
@include_once(THEMA_PATH.'/head.sub.php');
return;
}
//Change Mode
$as_href['pc_mobile'] = (G5_DEVICE_BUTTON_DISPLAY) ? get_device_change_url() : '';
// Head Sub
include_once(G5_PATH.'/head.sub.php');
include_once(G5_LIB_PATH.'/latest.lib.php');
$page_title = apms_fa($page_title);
$page_desc = apms_fa($page_desc);
$menu = apms_auto_menu();
$menu = apms_multi_menu($menu, $at['id'], $at['multi']);
if($is_member) thema_member();
//Statistics
$stats = apms_stats();
if($is_main && !$hid && !$gid ) {
$newwin_path = (G5_IS_MOBILE) ? G5_MOBILE_PATH : G5_BBS_PATH;
@include_once ($newwin_path.'/newwin.inc.php'); // 팝업레이어
}
if(IS_YC) {
if(IS_SHOP) {
if(file_exists(THEMA_PATH.'/shop.head.php')) {
include_once(THEMA_PATH.'/shop.head.php');
} else {
include_once(THEMA_PATH.'/head.php');
}
} else {
if(file_exists(THEMA_PATH.'/head.php')) {
include_once(THEMA_PATH.'/head.php');
} else {
include_once(THEMA_PATH.'/shop.head.php');
}
}
} else {
include_once(THEMA_PATH.'/head.php');
}
?>
2016-06-02 (목) 01:00:12
위 소스는 그누보드 root 혹은 해당 빌드의 root 에 있는 head.php 인 것 같은데요..
이건 별로 중요하지 않습니다. 테마 시스템에서는 건드릴 필요도 없고요.
제가 말씀드린 head.php 소스는, 빌더나 테마에 있는 head.php 소스, 즉 실제 적용되는 소스를 말합니다.
그리고, 알려주신 홈페이지는, 제가 브라우저를 닫아 버려서 들어가 볼 수가 없습니다.
죄송하지만, 오늘은 시간이 늦어 더이상 답변을 드릴 수 없을 것 같습니다.
이건 별로 중요하지 않습니다. 테마 시스템에서는 건드릴 필요도 없고요.
제가 말씀드린 head.php 소스는, 빌더나 테마에 있는 head.php 소스, 즉 실제 적용되는 소스를 말합니다.
그리고, 알려주신 홈페이지는, 제가 브라우저를 닫아 버려서 들어가 볼 수가 없습니다.
죄송하지만, 오늘은 시간이 늦어 더이상 답변을 드릴 수 없을 것 같습니다.
2016-06-02 (목) 10:56:32
마스타님 답변 정말 감사드립니다^-^
여차저차 해결 되엇어요 ㅜㅜ!!
두번불러 온다 하셔서 루트 헤드에서 팝업레이어 주석처리 햇더니 잘되네요 ㅎ!
정말 감사드립니다 마스타님!
여차저차 해결 되엇어요 ㅜㅜ!!
두번불러 온다 하셔서 루트 헤드에서 팝업레이어 주석처리 햇더니 잘되네요 ㅎ!
정말 감사드립니다 마스타님!
2016-06-02 (목) 11:19:29
페이지 구분을 위해서 파라미터가 필요하시면,
script_name 대신에 request_uri 를 사용해 보시기 바랍니다.
if($_SERVER['REQUEST_URI'] == "/bbs/page.php?hid=use") { define('_INDEX_', true); }
이렇게 하시면, ?hid=use 라는 파라미터로 구분해서 사용할 수 있습니다.
script_name 대신에 request_uri 를 사용해 보시기 바랍니다.
if($_SERVER['REQUEST_URI'] == "/bbs/page.php?hid=use") { define('_INDEX_', true); }
이렇게 하시면, ?hid=use 라는 파라미터로 구분해서 사용할 수 있습니다.
2016-06-01 (수) 16:35:12
head.php에 들어가보시면
Copy
<?php if(defined('_INDEX_')) { // index에서만 실행 include G5_BBS_PATH.'/newwin.inc.php'; // 팝업레이어 } ?>
이렇게 팝업 레이어 소스가있습니다.
간단하게 아래처럼 if문{}만 지워주시면 될듯하네요
Copy
<?php include G5_BBS_PATH.'/newwin.inc.php'; // 팝업레이어 ?>
이렇게 if문을 제거하면 모든 페이지에서 head.php파일을 호출하기때문에
모든 페이지에서 팝업 창이 나타납니다.
이것을 특정 페이지도 추가하고싶다고 한다면
예를들어서 게시판명 aaa, 내용명 bbb에 나타나게 하고싶다면
Copy
<?php if(defined('_INDEX_') || $bo_table == 'aaa' || $co_id == 'bbb') { // index에서만 실행 include G5_BBS_PATH.'/newwin.inc.php'; // 팝업레이어 } ?>
이렇게 처리하시면 될것같습니다.
답변에 대한 댓글 1개
답변을 작성하려면 로그인이 필요합니다.
define('_SUB01_', true); 로 넣었는데.. 페이지에 텍스트로 나와요...ㅜ
상단에 지정하라는게 정확히 어떻게 하라는말씀이신가요 ..