first commit 2
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
<?php
|
||||
if (!defined('_GNUBOARD_')) exit;
|
||||
$g5['title'] = '레이저기술';
|
||||
// lasertech_new 페이지 스킨 광고 영역 설정
|
||||
$lasertech_new_skin_config = [
|
||||
'left_ad' => false, // 좌측 광고 사용 안함
|
||||
'right_ad' => false, // 우측 광고 사용 안함
|
||||
];
|
||||
?>
|
||||
@@ -0,0 +1,181 @@
|
||||
/*
|
||||
* greeting 정보형 페이지 전용 스타일
|
||||
*/
|
||||
.sub-page-container {
|
||||
padding-top: 0px; !important;
|
||||
padding-bottom: 80px;
|
||||
background: #fff;
|
||||
min-height: 500px;
|
||||
}
|
||||
.container {
|
||||
/* max-width: 1200px; !important; */ /* 💡 [수정] 고정 너비 제거 */
|
||||
width: 90%; !important;/* 💡 [추가] 화면 너비의 90% 사용 (좌우 5% 여백) */
|
||||
max-width: 1600px; /* 💡 [추가] 너무 넓어지는 것 방지 (선택 사항) */
|
||||
margin: 0 auto;
|
||||
padding: 0 var(--spacing-md);
|
||||
}
|
||||
.info-page-container {
|
||||
background-color: #fff;
|
||||
padding: 40px;
|
||||
border-radius: 8px;
|
||||
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
|
||||
/* 페이지 헤더 */
|
||||
.info-page-header {
|
||||
text-align: center;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.info-page-title {
|
||||
font-size: 2.5rem;
|
||||
font-weight: 900;
|
||||
color: #222;
|
||||
line-height: 1.3;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.info-page-subtitle {
|
||||
font-size: 1.3rem;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
/* =====================================================
|
||||
🔥 [수정 핵심]
|
||||
이미지 | (한글 위 / 영어 아래) 2컬럼 구성
|
||||
기존 flex → grid 로 변경
|
||||
===================================================== */
|
||||
.greeting-content-wrapper {
|
||||
display: grid; /* [변경] */
|
||||
grid-template-columns: 250px 1fr; /* 이미지 | 텍스트 */
|
||||
column-gap: 40px;
|
||||
align-items: start;
|
||||
}
|
||||
|
||||
/* 대표 이미지 */
|
||||
.greeting-figure {
|
||||
flex: 0 0 250px; /* [유지] */
|
||||
margin: 0;
|
||||
grid-row: 1 / 3; /* 🔥 한글+영문 전체 높이 차지 */
|
||||
}
|
||||
|
||||
.greeting-image {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
border-radius: 8px;
|
||||
object-fit: cover;
|
||||
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
|
||||
}
|
||||
|
||||
/* =====================================================
|
||||
🔥 [수정 핵심]
|
||||
오른쪽 컬럼 내부 정렬
|
||||
===================================================== */
|
||||
.prose {
|
||||
font-size: 1.1rem;
|
||||
line-height: 1.8;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
/* 한글 콘텐츠 */
|
||||
.greeting-content-wrapper .prose:first-of-type {
|
||||
grid-column: 2;
|
||||
grid-row: 1;
|
||||
}
|
||||
|
||||
/* 영문 콘텐츠 */
|
||||
.greeting-content-wrapper .prose:last-of-type {
|
||||
grid-column: 2;
|
||||
grid-row: 2;
|
||||
}
|
||||
|
||||
/* 제목 스타일 */
|
||||
.prose h3 {
|
||||
font-size: 1.6rem;
|
||||
font-weight: 700;
|
||||
color: #0056b3;
|
||||
margin-top: 20px;
|
||||
margin-bottom: 15px;
|
||||
padding-bottom: 10px;
|
||||
border-bottom: 2px solid #f0f0f0;
|
||||
}
|
||||
|
||||
.prose h3:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.prose h3 .fas {
|
||||
margin-right: 10px;
|
||||
font-size: 1.4rem;
|
||||
}
|
||||
|
||||
.prose p {
|
||||
margin-bottom: 1.5em;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.prose strong {
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
/* =====================================================
|
||||
📱 모바일 대응 (기존 유지 + grid 대응 추가)
|
||||
===================================================== */
|
||||
@media (max-width: 768px) {
|
||||
.greeting-content-wrapper {
|
||||
grid-template-columns: 1fr; /* 세로 스택 */
|
||||
}
|
||||
|
||||
.greeting-figure {
|
||||
grid-row: auto;
|
||||
max-width: 300px;
|
||||
margin: 0 auto 30px;
|
||||
}
|
||||
|
||||
.prose {
|
||||
font-size: 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.info-page-container {
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
.info-page-title {
|
||||
font-size: 2rem;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* 3단 레이아웃 스타일 (기존 코드 유지)
|
||||
*/
|
||||
.three-column-layout {
|
||||
display: flex;
|
||||
gap: 30px;
|
||||
}
|
||||
|
||||
.layout-sidebar-left {
|
||||
flex: 0 0 240px;
|
||||
}
|
||||
|
||||
.layout-main-content {
|
||||
flex: 1;
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
.layout-sidebar-right {
|
||||
flex: 0 0 240px;
|
||||
}
|
||||
|
||||
@media all and (max-width: 768px) {
|
||||
.three-column-layout {
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.layout-sidebar-left,
|
||||
.layout-main-content,
|
||||
.layout-sidebar-right {
|
||||
flex-basis: 100%;
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 6.8 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 44 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 543 KiB |
@@ -0,0 +1,154 @@
|
||||
<?php
|
||||
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
|
||||
// 1. 현재 스킨 폴더명 정의 (config.php 로드 전에 설정)
|
||||
|
||||
|
||||
// 2. 통합 설정 파일 로드
|
||||
$config_path = G5_THEME_PATH . '/skin/page/config.php';
|
||||
if (file_exists($config_path)) {
|
||||
include_once($config_path);
|
||||
} else {
|
||||
$page_skin_config = array('left_ad' => false, 'right_ad' => false);
|
||||
}
|
||||
$current_page_skin = 'lasertech_new';
|
||||
// 3. 스킨 경로 정의
|
||||
$page_skin_url = G5_THEME_URL . '/skin/page/' . $current_page_skin;
|
||||
$page_skin_path = G5_THEME_PATH . '/skin/page/' . $current_page_skin;
|
||||
// 4. CSS/JS 로드
|
||||
add_stylesheet('<link rel="stylesheet" href="' . $page_skin_url . '/css/style.css?ver=' . G5_SERVER_TIME . '">', 0);
|
||||
add_javascript('<script src="' . $page_skin_url . '/js/script.js?ver=' . G5_SERVER_TIME . '"></script>', 0);
|
||||
|
||||
// 5. 기본 데이터 정의
|
||||
$page_data = array(
|
||||
'title' => '미래를 조각하는 정밀한 빛',
|
||||
'subtitle' => '월간 레이저기술 | 국내 유일의 레이저산업 전문 종합 기술 플랫폼',
|
||||
'content' => '
|
||||
<h3><i class="fas fa-history"></i> 우리의 역사: 30년 혁신의 기록</h3>
|
||||
<p>
|
||||
1993년 9월 15일 창간 이래, <strong>월간 레이저기술</strong>은 30년 넘게 국내 유일의 레이저산업 전문지로서 대한민국 레이저 기술 발전의 역사를 함께 써왔습니다. <br> 글로벌 트렌드부터 최신 기술, 혁신적인 제품, 그리고 연구 개발 성과까지 깊이 있게 다루며 미래 산업의 로드맵을 제시해왔습니다.
|
||||
</p>
|
||||
|
||||
<h3><i class="fas fa-bullseye"></i> 우리의 비전: 핵심 지식 허브</h3>
|
||||
<p>
|
||||
의료, 통신, 제조 등 다양한 분야에서 혁신을 이끄는 레이저 기술! <br> 특히 가공, 절단, 마킹, 용접 등 현장의 실용 기술 정보에 대한 갈증을 해소하기 위해, 월간 레이저기술은 <strong>정교한 정보와 심층 분석</strong>을 제공하여 국내 레이저 기술 생태계의 건강한 성장을 돕는 것을 목표로 합니다.
|
||||
</p>
|
||||
|
||||
<h3><i class="fas fa-hands-helping"></i> 우리의 약속: 신뢰할 수 있는 길잡이</h3>
|
||||
<p>
|
||||
변화하는 기술 패러다임을 누구보다 빠르게 읽고, 레이저 기술이 열어갈 새로운 가능성을 가장 먼저 독자 여러분께 전달하겠습니다.<br> 저희의 정보가 여러분의 현장 고민을 해결하고, 미래 전략을 세우는 데 든든한 길잡이가 되기를 바랍니다. 여러분의 관심과 의견은 저희가 발전하는 가장 큰 원동력입니다.
|
||||
</p>
|
||||
|
||||
<hr class="info-page-divider">
|
||||
|
||||
<h3><i class="fas fa-globe-americas"></i> Monthly Laser Technology: Our Story</h3>
|
||||
<p>
|
||||
Since our first issue on September 15, 1993, <strong>Monthly Laser Technology Magazine</strong> has been Korea\'s one-and-only specialized laser publication for over 30 years. We\'ve documented the nation\'s laser technology evolution, from global trends to R&D breakthroughs, serving as a <strong>key knowledge hub</strong> that maps out the future of the industry.
|
||||
</p>
|
||||
<p>
|
||||
Laser tech is sparking innovation in medicine, telecom, and manufacturing. We know there\'s a huge thirst for practical, hands-on information. That\'s why we deliver the <strong>precise insights and in-depth analysis</strong> needed to help our domestic laser ecosystem thrive.
|
||||
</p>
|
||||
<p>
|
||||
We\'re always the first to spot changing tech paradigms and share exciting new possibilities. We hope our insights become your trusted guide for solving real-world challenges and building future strategies. Your interest and feedback are what drive us forward. Let\'s illuminate the bright future of the laser industry, together!
|
||||
</p>',
|
||||
'image_url' => $page_skin_url . '/images/img.png',
|
||||
'image_alt' => '레이저기술',
|
||||
'sign_name' => '',
|
||||
'sign_company' => ''
|
||||
);
|
||||
|
||||
// 6. 모듈 설정 연동
|
||||
if (!isset($module_config) && isset($md_id) && $md_id) {
|
||||
$module_config = sql_fetch(" SELECT * FROM rb_module WHERE md_id = '{$md_id}' ");
|
||||
}
|
||||
|
||||
if (isset($module_config) && $module_config['md_type'] == 'page') {
|
||||
$target_bo_table = $module_config['md_bo_table_page'];
|
||||
$target_wr_id = $module_config['md_wr_id_page'];
|
||||
|
||||
if ($target_bo_table && $target_wr_id) {
|
||||
$write_table = $g5['write_prefix'] . $target_bo_table;
|
||||
$view = sql_fetch(" SELECT * FROM {$write_table} WHERE wr_id = '{$target_wr_id}' ");
|
||||
|
||||
if ($view) {
|
||||
$page_data['title'] = $view['wr_subject'];
|
||||
$page_data['subtitle'] = $view['wr_1'];
|
||||
$page_data['content'] = conv_content($view['wr_content'], 1);
|
||||
|
||||
$sql_file = " select bf_file, bf_source from {$g5['board_file_table']} where bo_table = '$target_bo_table' and wr_id = '$target_wr_id' order by bf_no limit 1 ";
|
||||
$row_file = sql_fetch($sql_file);
|
||||
if ($row_file['bf_file']) {
|
||||
$page_data['image_url'] = G5_DATA_URL.'/file/'.$target_bo_table.'/'.$row_file['bf_file'];
|
||||
$page_data['image_alt'] = $row_file['bf_source'];
|
||||
} else {
|
||||
$matches = get_editor_image($view['wr_content'], false);
|
||||
if($matches) {
|
||||
$img_src = $matches[1][0];
|
||||
if (!preg_match("/^(http|https):/i", $img_src)) {
|
||||
$page_data['image_url'] = G5_URL . $img_src;
|
||||
} else {
|
||||
$page_data['image_url'] = $img_src;
|
||||
}
|
||||
$page_data['image_alt'] = $view['wr_subject'];
|
||||
} else {
|
||||
$page_data['image_url'] = '';
|
||||
}
|
||||
}
|
||||
|
||||
$page_data['sign_name'] = $view['wr_2'];
|
||||
$page_data['sign_company'] = $view['wr_3'];
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
<div class="three-column-layout container">
|
||||
<?php if (isset($page_skin_config['left_ad']) && $page_skin_config['left_ad'] === true): ?>
|
||||
<aside class="layout-sidebar-left">
|
||||
<div class="sidebar-inner">
|
||||
<?php if($is_admin) { ?> <h3 class="sidebar-title">좌측 광고 영역</h3> <?php } ?>
|
||||
<div class="flex_box flex_box_l" data-layout="<?php echo $current_page_skin; ?>-left"></div>
|
||||
</div>
|
||||
</aside>
|
||||
<?php endif; ?>
|
||||
|
||||
<!-- 2. 중앙 메인 콘텐츠 -->
|
||||
<main class="layout-main-content1">
|
||||
<div class="info-page-container">
|
||||
|
||||
<!-- 페이지 헤더 -->
|
||||
<header class="info-page-header">
|
||||
<h2 class="info-page-title"><?php echo $page_data['title']; ?></h2>
|
||||
<?php if($page_data['subtitle']): ?>
|
||||
<p class="info-page-subtitle"><?php echo $page_data['subtitle']; ?></p>
|
||||
<?php endif; ?>
|
||||
</header>
|
||||
<!-- 본문 콘텐츠 -->
|
||||
<div class="greeting-content-wrapper">
|
||||
<?php if($page_data['image_url']): ?>
|
||||
<figure class="greeting-figure">
|
||||
<img src="<?php echo $page_data['image_url']; ?>" alt="<?php echo $page_data['image_alt']; ?>" class="greeting-image">
|
||||
</figure>
|
||||
<?php endif; ?>
|
||||
<article class="prose">
|
||||
<?php echo $page_data['content']; ?>
|
||||
<?php if($page_data['sign_name'] || $page_data['sign_company']): ?>
|
||||
<div class="signature">
|
||||
<?php if($page_data['sign_name']): ?><strong><?php echo $page_data['sign_name']; ?></strong><?php endif; ?>
|
||||
<?php if($page_data['sign_company']): ?><span><?php echo $page_data['sign_company']; ?></span><?php endif; ?>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<?php if (isset($page_skin_config['right_ad']) && $page_skin_config['right_ad'] === true): ?>
|
||||
<aside class="layout-sidebar-right">
|
||||
<div class="sidebar-inner">
|
||||
<?php if($is_admin) { ?> <h3 class="sidebar-title">우측 광고 영역</h3> <?php } ?>
|
||||
<div class="flex_box flex_box_r" data-layout="<?php echo $current_page_skin; ?>-right"></div>
|
||||
</div>
|
||||
</aside>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
@@ -0,0 +1,12 @@
|
||||
// 이 페이지 전용 커스텀 자바스크립트
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
// 예: 특정 요소에 애니메이션 추가 등
|
||||
// const title = document.querySelector('.section-title');
|
||||
// if(title) {
|
||||
// title.style.opacity = 0;
|
||||
// setTimeout(() => {
|
||||
// title.style.transition = 'opacity 0.5s';
|
||||
// title.style.opacity = 1;
|
||||
// }, 100);
|
||||
// }
|
||||
});
|
||||
Reference in New Issue
Block a user