

































• CPT fggc_resource + 택소노미 resource_category 등록
• 분류: 로고·캐릭터·문서자료·이미지·기타 자동 생성
• 관리자: wp-admin 교회자료실 페이지 (파일 업로드·편집·삭제·카테고리 필터)
• 인트라넷: 홈페이지 관리 > 📂 교회자료실 탭 추가
• 공개 아카이브: /resource/ (프리미엄 그리드 카드 UI, 카테고리 탭 필터)
• 다운로드: ?resource_dl=ID 쿼리변수로 카운터 증가 후 파일 리다이렉트
• 상세 모달: 썸네일·제목·설명 클릭 시 전체 정보 팝업
• 지원 파일 형식: JPG·PNG·SVG·PDF·ZIP·DOCX·HWP·PPTX·AI·EPS·MP3·MP4
• 사용자 매뉴얼 교회자료실 섹션 추가
• 로고 이미지 제거 — 흰색 배경 영역 완전 삭제
• '교역자 인트라넷' 타이틀: 12px → 16px, font-weight 800, 흰색
• 메뉴 아이템 패딩 축소로 스크롤 없이 전체 메뉴 표시
• 사용자 영역 padding 8px → 6px
• section-daily 전체 배경: 딥 네이비 그라디언트 (#0b1a2e → #13253f)
• verse-card--wide: 글래스모피즘 효과, 금빛(#d4af37) 상단 테두리 2px
• 말씀 구절: 흰색 italic, 성경 출처: 금빛 뱃지 스타일
• 배경 대형 따옴표 장식, 우하단 금빛 광채 효과
• 3열 카드(교회영상·말씀카드·주보): 흰 배경 유지, 다크 테마 내 밝은 섬 형태
• 카드 라벨 색상 var(--accent) 파란 계열 유지
• 기존: 생방송 카드 전체가 라이브 URL로 연결되어 채널 링크도 같은 URL로 이동
• 수정: 카드 div + onclick(라이브 URL), 채널 링크 별도 + stopPropagation()
• 채널 URL: https://www.youtube.com/@순복음금정교회
• 생방송 OFF 상태일 때도 채널 링크는 정상 작동
• 7개 설교 카드를 2행×4열 그리드로 재구성 (대형 1개 + 소형 6개)
• 좌측 대형 카드(grid-area a) + 우측 3×2 배치
• 썸네일 해상도 개선: WordPress 대표 이미지 우선, YouTube mqdefault.jpg 폴백
• 마우스 오버 시 대형 플레이 버튼(CSS triangle) 표시
• 태블릿(900px) 3열, 모바일(600px) 1개만 표시 반응형 적용
• CSS !important + .section-worship 스코핑으로 충돌 해결
• worship-inner 커스텀 클래스로 전체 너비 확장
홈페이지 하단 4열 음악 섹션을 전면 개선했습니다.
주요 변경:
- 그리드 비율: repeat(4,1fr) → 1.2fr 1.2fr 0.8fr 0.8fr (음악 열 확대, 홍보 열 축소)
- music-grid 클래스 제거: music-grid-1col만 사용하여 썸네일 너비 충돌 해소
- section-music-col에 min-width:0; width:100% 추가로 컨텐츠 밀림 방지
- 타이틀 정렬: 간증음악 열 헤더를 row 방향으로 통일 (더 듣기 → 우측 배치)
- 타이틀 단축: '간증음악 바로 듣기' → '간증음악 듣기'
- 간증음악 만들기 설명 텍스트 줄바꿈(br) 제거로 자연스러운 흐름 유지
- 섹션 상하 패딩: 36px/28px → 6px/4px로 대폭 축소
- 카드 하단 버튼 추가: 📖 간증사연보기(보라) / ▶ 유튜브(빨강) 아이콘 버튼
성도 직책(성도/집사/안수집사/권사/장로/목사)을 사연 접수 및 관리에 반영했습니다.
추가 내용:
- 사연 제출 폼: 성명 옆 직책 선택 드롭다운 추가
- AJAX 핸들러(functions.php): tr_role 수신 및 허용값 검증 후 post meta 저장
- 인트라넷 편집 폼: 성명 수정 + 직책 변경 가능한 필드 추가
- 인트라넷 저장 핸들러: tr_role, post_title 수정 저장 반영
- 홈페이지 간증음악 카드: '김민찬 성도' → tr_role meta 값으로 직책 표시
- testimony-listen 페이지: '○○○ 성도님의 간증' → 직책 동적 표시
testimony-listen 페이지에 사연 열람 및 TTS 재생 기능을 추가했습니다.
추가 내용:
- 각 카드 하단에 '📖 사연보기' 버튼 추가 (보라색)
- 클릭 시 팝업 모달: 성도명, 사연 전문 스크롤, 사연듣기(TTS) 버튼
- 모달 TTS와 리스트 TTS 통합 — 한 곳 재생 중 다른 곳 클릭 시 자동 전환
- ESC / 배경 클릭 / ✕ 버튼으로 모달 닫기
- 리스트에서도, 사연을 보면서도 TTS로 들을 수 있도록 이중 진입점 제공
testimony-listen 페이지에서 '사연보기' 버튼 클릭 시 모달이 표시되지 않던 버그를 수정했습니다.
원인: 모달 div에 style="display:none" 인라인 스타일이 설정되어 있어 CSS 클래스 .open { display:flex }가 인라인 스타일보다 우선순위가 낮아 적용되지 않았습니다.
수정: classList.add('open') 방식에서 JS에서 직접 style.display = 'flex' / 'none'으로 제어하도록 변경. 배경 클릭 이벤트도 DOMContentLoaded 이후 등록으로 안전하게 수정.
동일 IP에서 여러 번 MP3를 다운로드할 때 매번 카운트가 증가하던 문제를 수정했습니다.
수정 내용:
- 요청 IP를 MD5 + WordPress 서버 고유 솔트로 해싱하여 post meta(tr_download_ips)에 저장
- 동일 IP 재요청 시 카운트 증가 없이 현재값만 반환
- X-Forwarded-For 헤더 지원으로 프록시/CDN 경유 환경에서도 정확한 IP 감지
- 원본 IP는 저장하지 않아 개인정보 보호
인트라넷 성도 사연 편집 화면의 사연 내용 표시 영역을 전면 개선했습니다.
- 전체 박스: font-size 13px → 15px, line-height 1.9, color #444 → #333
- 접수일/연락처: font-size 11px → 12px
- 장르/분위기/보컬 배지: font-size 12px → 13px
- 사연 내용 텍스트: 전용 div 분리, font-size 15px, line-height 2, word-break:keep-all
- 열람 영역 높이 300px 고정, overflow-y:scroll 우측 스크롤바 적용, padding-right:8px
인트라넷 일정 탭에서 단일 일정(schedule_end_date 미설정)이 목록 및 캘린더에 표시되지 않던 버그를 수정했습니다.
기존 쿼리는 schedule_end_date >= month_start 조건을 요구해 end_date가 비어있는 단일 일정이 걸리지 않았으며, fallback 쿼리는 if(empty($events)) 조건으로 기간 일정이 하나라도 있으면 실행되지 않는 구조였습니다.
수정 내용:
- 쿼리를 ① 이달 내 시작하는 모든 일정(단일+기간 시작)과 ② 이달 이전 시작·이달까지 이어지는 기간 일정으로 분리
- 두 결과를 병합 후 ID 중복 제거 및 schedule_date 기준 재정렬
오시는길 페이지 우측 정보 영역(주소·교통정보·연락처)을 전면 중앙정렬로 변경했습니다.
- 섹션 타이틀(주소/교통/연락처): text-align:center
- 주소·영문주소: text-align:center
- 교통수단 항목: justify-content:center, 세부 텍스트 center
- 연락처 행: justify-content:center
- 지도 버튼(네이버/구글/카카오): justify-content:center
daily-inner-4 섹션 내부 간격을 전반적으로 확대했습니다.
- 오늘의말씀 ↔ 3열카드 gap: 12px → 20px
- 3열 카드 사이 gap: 16px → 20px
- 섹션 상/하 패딩: 6px/8px → 16px/18px
오늘의말씀 카드를 flex-direction:row 가로형으로 구현했습니다.
- 왼쪽: ✝ 오늘의 말씀 레이블 + 날짜(한 줄 나란히)
- 구분선(border-right)
- 오른쪽: 성경구절 텍스트(중앙정렬) + 성경 출처(우측)
- 폰트 크기 상향: 레이블 17px, 날짜 14px, 구절 1.08rem, 출처 0.97rem
교회영상 iframe 컨테이너의 aspect-ratio를 16/6에서 16/9로 변경하고 flex:1을 제거했습니다.
YouTube 영상 비율(16:9)과 컨테이너 비율이 일치하여 상하 검은 여백이 사라졌습니다.
말씀카드·주보 이미지 영역도 동일하게 16/9로 통일하여 3열 카드 높이를 맞췄습니다.
공개 캘린더 페이지(page-community-schedule.php)에 사용자 인터랙션을 추가했습니다.
- 일정이 있는 날짜 셀 hover 시 cursor:pointer 및 배경 하이라이트
- 일정 바 클릭: 해당 일정 상세 팝업 모달
- 날짜 숫자 클릭: 그 날 전체 일정 목록 팝업
- 팝업 내 표시: 날짜(요일)·제목·시간·카테고리·장소
- ESC / 배경 클릭 / ✕ 버튼으로 닫기
기존 4열 그리드(오늘의말씀|교회영상|말씀카드|주보)를 2행 구조로 전면 개편했습니다.
- 상단: 오늘의말씀 전체 너비 가로형 띠 (레이블+날짜 | 성경구절+출처)
- 하단: 교회영상·말씀카드·주보 균등 3열 그리드 (1fr 1fr 1fr)
- 말씀카드·주보 전체보기 링크를 카드 타이틀 우측으로 이동하여 공간 효율화
기존 fggc.kr FTP 서버에서 구 홈페이지 YouTube 배경영상 ID(wX2iHRlHnUk)를 추출했습니다.
- WordPress 옵션(fggc_church_video_url)에 저장
- 홈페이지 교회영상 카드: mute+autoplay+loop iframe 표시
- 오시는길 페이지 하단: 16:9 영상 섹션 추가
- YouTube embed URL 파라미터: autoplay=1&mute=1&loop=1
서버 PHP 버전이 7.4 미만으로, fn() 화살표 함수 구문을 지원하지 않아 500 오류 발생.
fggc-intranet.php 1개소, functions.php 3개소의 fn() 화살표 함수를 모두 function(){} 익명 함수로 교체하여 하위 호환성을 확보했습니다.
인트라넷(fggc-intranet.php)의 church_video_save case가 switch 문 밖에 위치하여 PHP 500 오류가 발생하던 문제를 수정했습니다.
불필요한 중괄호를 제거하여 올바른 switch 구조로 복원했습니다.
사이트 최하단(푸터 아래)에 온라인헌금 안내 배너 이미지를 추가하였습니다.
달력 섹션과 동일한 너비(section-inner)로 표시됩니다.
메뉴 작업 이후 순서가 뒤섞인 문제를 해결하였습니다.
최종 순서: 교회소개 → 예배와 말씀 → 다음세대 → 순복음작업실 → 커뮤니티 → 화명성전
wp_update_nav_menu_item() API를 활용하여 안정적으로 재정렬하였습니다.
fggc_broadcast CPT 아카이브 URL(/broadcast/)에 접속 시 빈 페이지가 표시되는 문제를 수정하였습니다.
archive-fggc_broadcast.php 템플릿 파일을 신규 생성하고 퍼머링크를 재설정하였습니다.
1차 메뉴 클릭 시 빈 페이지가 출력되는 문제를 수정하였습니다.
- 교회소개 → /church-greeting (인사말)
- 예배와 말씀 → /worship-sermon (설교영상)
- 순복음작업실 → /broadcast (FGGC방송국)
- 커뮤니티 → /news-notice (공지사항)
모바일 하단 내비게이션의 음악 아이콘 링크를 /chan-workshop에서 /chan-music으로 수정하였습니다.
신규 음악 페이지와 연동됩니다.
홈페이지 하단 음악 섹션을 좌우 2분할로 개편하였습니다.
- 좌: 간증음악 바로 듣기 (testimony_request)
- 우: 음악 바로 듣기 (fggc_music)
- 각 3개 썸네일 그리드, 인라인 YouTube 모달 재생
순복음작업실 하위에 '음악' 메뉴 및 페이지를 신규 생성하였습니다.
- 커스텀 포스트 타입(fggc_music) 등록, slug: chan-music
- 인트라넷 음악 관리 탭 추가 (등록/수정/삭제)
- 아카이브 템플릿(archive-fggc_music.php) 생성
- YouTube 모달 재생 지원
사이드바 로고 배경을 흰색으로 변경하고 '교역자 인트라넷' 텍스트를 14px 볼드로 개선하였습니다.
시인성 및 브랜드 통일감을 높였습니다.
로그인 페이지 배경색을 기존 회색에서 흰색(#ffffff)으로 변경하였습니다.
CI 로고 색상과의 조화를 위한 개선입니다.
워드프레스 기본 'W' 로그인 로고를 순복음금정교회 CI 로고(fggc-ci-logo.jpg)로 교체하였습니다.
login_enqueue_scripts 훅을 활용하여 테마에서 직접 로고 이미지를 적용했습니다.
푸터 소통하기 영역에서 인스타그램, 카카오채널을 제거하고 네이버밴드(band.us/@fggc) 링크를 추가했습니다. YouTube 링크도 공식 채널로 업데이트했습니다.
갤러리 아카이브 페이지의 posts_per_page를 15개로 조정했습니다.
부교역자 8명, 교구담당 3명, 화명성전 2명 등 총 15명의 교역자 사진과 직책 정보를 등록하고, 원로·담임목사와 구분되는 카드 레이아웃을 적용했습니다.
http://fggc.kr 에서 참조되던 주보 이미지가 HTTPS 환경에서 Mixed Content로 차단되는 문제를 마이그레이션 스크립트(wp_jubo_img_migrate.php)로 이미지를 dothome 서버로 재업로드하여 해결했습니다.
예배안내(ID:48), 설교영상(ID:49) 페이지에 템플릿이 지정되지 않아 빈 화면이 표시되는 문제를 wp_quick_fix.php로 올바른 템플릿을 재지정하여 해결했습니다.
교회연혁(ID:86,88) 페이지에 화명성전 템플릿이 잘못 할당된 문제를 wp_tpl_fix.php로 정정하여 tmpl-history.php로 재지정했습니다.
main.js의 IIFE 내부에 선언된 openYtModal 함수가 외부에서 호출 불가한 문제를 window.openYtModal로 전역 노출하여 해결했습니다. front-page.php에 onclick 속성도 추가했습니다.
좌측 상단 예배 시간 안내 텍스트를 font-size: 17px, font-weight: 600으로 가독성 있게 조정했습니다.
다음세대 부서 소개 카드를 4열×2행 고정 그리드로 변경하고, "자세히 보기" 텍스트 겹침 현상을 flex column + margin-top:auto 구조로 해결했습니다.
상단 내비게이션 1차 메뉴와 서브메뉴 사이의 6px 간격을 투명 padding-top 브리지로 처리하여 마우스 이동 중 서브메뉴가 사라지는 문제를 해결했습니다.
교회소개·예배·다음세대·화명성전 등 모든 서브페이지 히어로 높이를 텍스트 중심(auto)으로 변경하여 불필요한 여백을 제거했습니다.
사이트 하단에 개발일지를 타임라인·카테고리 필터 형태로 표시하는 슬라이드 패널을 추가했습니다. 관리자 전용 편집·삭제 링크도 포함됩니다.
footer.php에 YouTube 모달을 공통 삽입하고 main.js에서 window.openYtModal / window.closeYtModal 전역 함수로 노출했습니다. data-yt-id 속성 또는 onclick으로 어디서나 호출 가능합니다.
상단 topbar에 예배안내(파랑), 오시는길(청록), 유튜브(빨강), 네이버밴드(초록) 배지 스타일 링크를 추가했습니다. 유튜브·네이버밴드는 새 창으로 이동합니다.
모든 페이지 우측 하단에 스크롤 300px 이상 시 나타나는 TOP 버튼을 추가했습니다. 클릭 시 부드러운 스크롤로 상단 이동합니다.
푸터 소통하기 영역에서 인스타그램, 카카오채널을 제거하고 네이버밴드(band.us/@fggc) 링크를 추가했습니다. YouTube 링크도 공식 채널로 업데이트했습니다.
갤러리 아카이브 페이지의 posts_per_page를 15개로 조정했습니다.
부교역자 8명, 교구담당 3명, 화명성전 2명 등 총 15명의 교역자 사진과 직책 정보를 등록하고, 원로·담임목사와 구분되는 카드 레이아웃을 적용했습니다.
http://fggc.kr 에서 참조되던 주보 이미지가 HTTPS 환경에서 Mixed Content로 차단되는 문제를 마이그레이션 스크립트(wp_jubo_img_migrate.php)로 이미지를 dothome 서버로 재업로드하여 해결했습니다.