Q&A

CMS/프레임워크 Rhymix 2.1
개발 언어 PHP 7.3

안녕하세요?

 

https://주소/index.php?mid=게시판이름&act=dispBoardWrite

 

이렇게 되어 있는 글쓰기 화면을

 

https://주소/메뉴

 

이렇게 메뉴를 부여해서 쓰고 싶은데, 글쓰기 화면만 담당하는 모듈을 만드는 방법 밖에 없을까요?

조언을 구해봅니다!

스코스코 Lv. 5

댓글 9

  • 가장 꼼수로 만들 수 있는 방법은 별도의 게시판 스킨을 복사 후 글쓰기용 게시판을 하나 만듭니다.

    그리고 write_form.html 에서 셀렉트 박스로 게시판 목록을 불러오고 게시판을 선택할때마다 form안의 mid값을 바꿔주게 합니다.

     

    그리고 각 게시판 별로 카테고리가 있을 수 있으니 카테고리도 불러오게끔 해서 작업했습니다.

     

    가장 좋은 방법은 별도의 모듈을 만들어서 view를 구성하는게 좋겠죠 ㅎㅎ

  • 3시간 전 #1911912

    답변 감사합니다. 내용이 좀 어려워서 제미니에게 해설을 부탁해봤어요.

    게시판을 선택한 건 아니고 한개의 특정 게시판에 글이 등록되면 되는 상황입니다. 말씀하신 쉬운 방법으로 한 번 시도해봐야겠어요. 혹시라도 추가 팁 혹은 제가 AI 작업할 때 어떻게 지시하면 AI가 찰떡 같이 이해할지 조언해주실 부분이 있다면 부탁드려봅니다!

     

    현재 상황과 목표

    • 현재: 글을 쓰려면 https://주소/index.php?mid=게시판이름&act=dispBoardWrite 처럼 길고 복잡한 주소로 가야 함.

    • 목표: https://주소/글쓰기 처럼 짧고 예쁜 주소로 접속하면, 바로 글을 쓸 수 있는 페이지가 나오게 하고 싶음.

    사용자님이 찾으신 답변은 이 문제를 해결하는 두 가지 방법을 제시하고 있습니다.

    1. 꼼수 (빠르고 쉬운 편법)

    2. 정석 (제대로 된 방법, 하지만 어려움)


    방법 1: '꼼수' (빠르고 쉬운 편법) - 이걸 자세히 설명해 드릴게요!

    이 방법의 핵심 아이디어는 **"통합 글쓰기 페이지"**를 하나 만드는 것입니다. 마치 여러 우체통에 편지를 넣으러 돌아다니는 대신, 중앙 우체국에 가서 "이 편지는 A동네로, 저 편지는 B동네로 보내주세요"라고 한 번에 처리하는 것과 같습니다.

    단계별 설명

    1. '중앙 우체국' 만들기 (글쓰기 전용 게시판 생성)

    • 먼저, 실제 글이 저장될 용도가 아닌, 오직 글쓰기 화면을 보여주기 위한 가짜 게시판을 하나 만듭니다.

    • 관리자 페이지에서 게시판을 새로 만들고, 모듈 이름(mid)을 write 나 post 처럼 기억하기 쉽게 정합니다.

    • 이제 사이트 메뉴 설정에서 https://주소/글쓰기 라는 메뉴를 만들고, 방금 만든 write 게시판에 연결합니다.

    • 결과: 이제 https://주소/글쓰기로 접속하면, 이 '글쓰기 전용 게시판'의 글쓰기 화면이 나타납니다. 목표의 절반은 달성했습니다!

    2. '어디로 보낼지 선택' 기능 추가 (글쓰기 화면 수정)

    • 지금 상태로는 https://주소/글쓰기에서 글을 쓰면, 우리가 만든 가짜 write 게시판에 글이 저장됩니다. 이건 우리가 원하는 게 아니죠. 우리는 '자유게시판'이나 '질문게시판'에 글이 써지길 원합니다.

    • 그래서 글쓰기 화면(write_form.html)을 수정해야 합니다.

    • 여기에 "어느 게시판에 글을 쓰시겠어요?" 라는 질문과 함께 **게시판 목록을 보여주는 드롭다운 메뉴(<select>)**를 추가합니다.

      • (예: [ 자유게시판 v ])

      • [ 질문게시판 ]

      • [ 공지사항 ]

    3. '편지 주소 바꿔치기' (자바스크립트 작업)

    • 이게 가장 핵심적인 '꼼수' 부분입니다.

    • 사용자가 드롭다운 메뉴에서 **'자유게시판'**을 선택하는 순간, 보이지 않는 곳에서 마법이 일어납니다.

    • 자바스크립트를 이용해서, 글쓰기 폼(form)이 가지고 있는 숨겨진 목적지 정보(mid 값)를 '자유게시판'의 mid 값으로 몰래 바꿔치기합니다.

    • 사용자는 그냥 '자유게시판'을 선택하고 [저장] 버튼을 누르지만, 시스템은 이 글을 '자유게시판'으로 보내게 되는 것입니다.

    • 마치 중앙 우체국 직원이 편지 봉투에 적힌 동네 이름을 보고, 진짜 그 동네로 가는 우편 자루에 편지를 옮겨 담는 것과 같습니다.

    • 답변에 나온 '카테고리' 이야기도 마찬가지입니다. 게시판을 선택하면, 그 게시판에 맞는 카테고리 목록도 함께 불러와서 보여주도록 만드는 것입니다.

    '꼼수' 방법 요약

    장점 단점
    쉽고 빠르다: PHP나 라이믹스 구조를 잘 몰라도 HTML과 약간의 자바스크립트만으로 구현 가능. 완벽하지는 않다: 글 '쓰기'는 되지만, 나중에 글을 '수정'할 때는 원래의 길고 복잡한 주소로 이동하게 됨.
    직관적이다: 사용자 입장에서는 하나의 페이지에서 모든 게시판에 글을 쓸 수 있어 편리함. 꼼수다: 이름 그대로 정석적인 방법은 아니어서 약간의 편법처럼 느껴질 수 있음.

    방법 2: '정석' (제대로 된 방법)

    이 방법은 **"글쓰기 전용 모듈"**을 아예 새로 개발하는 것입니다.

    • 설명: 라이믹스의 '게시판 모듈', '회원 모듈'처럼, 오직 https://주소/글쓰기 라는 주소를 처리하고 글쓰기 화면을 보여주는 역할만 하는 새로운 기능 덩어리(모듈)를 직접 코딩해서 만드는 것입니다.

    • 비유: '중앙 우체국'을 임시로 만드는 게 아니라, 아예 처음부터 설계도를 그려서 새로운 최첨단 우편 시스템을 구축하는 것과 같습니다.

    '정석' 방법 요약

    장점 단점
    가장 깔끔하고 완벽하다: 시스템 구조에 딱 맞게 작동하며, 확장성도 좋음. 매우 어렵다: PHP 언어와 라이믹스 CMS의 내부 구조를 깊이 이해하고 있는 전문 개발자만 가능.
    유지보수가 용이하다: 정식 기능이므로 나중에 문제가 생겨도 원인을 찾기 쉬움. 시간과 비용이 많이 든다: 간단한 기능을 위해 너무 큰 노력이 필요할 수 있음.

    결론: 그래서 뭘 해야 하나요?

    질문자님께서 개발자가 아니시거나, 빠르고 간단하게 문제를 해결하고 싶으시다면 '꼼수'라고 설명된 첫 번째 방법이 훨씬 현실적이고 좋은 선택입니다. 비록 '꼼수'라고 불리지만, 실제로 많은 웹사이트에서 효율성을 위해 사용하는 매우 실용적인 기법입니다.

    만약 이 프로젝트가 매우 중요하고 장기적으로 운영되어야 하며, 개발 실력이 충분하다면 '정석'적인 방법을 고려해볼 수 있습니다.

  • 알려주신 방법의 약간 하이브리드처럼 페이지 모듈의 스킨을 만들어서 해결했습니다! 감사합니다!

  • 3시간 전 #1911917

    위젯 페이지를 만드시고 https://rhymix.org/pds/1359990 폼 위젯 설치하셔서 추가하시면 비슷하게 구현 가능합니다.

  • 3시간 전 #1911921

    외부 페이지에 위젯 설치하면 되겠군요! 일단 이게 조금은 더 쉽게 느껴집니다!

  • 3시간 전 #1911925

    모든 형태의 짧은주소를 사용하신다면 도메인/mid/write 까지는 별도의 자료 없이 줄일 수 있습니다.

    예: https://rhymix.org/qna/write

  • 2시간 전 #1911929

    엌 이게되네요 ㅎㅎㅎ 방금 모든 형태의 짧은 주소 on 하고 해보니까 됩니다. 그래도 이왕 많은 분들이 조언을 주셔서 조금 더 가보려고 합니다!

  • 2시간 전 #1911941

    엌 근데 조금 더 생각해보니까, 뒤에 파라미터가 많이 붙는게 seo나 검색엔진에 불리해서, 솔루션을 생각하던거라 짧은 주소가 그냥 답이겠네요. https://rhymix.org/qna/write 이 글쓰기 화면에 seo 정보를 넣고 싶으면, write_form.html에 하드코딩해서 넣으면 되겠죠?

     

  • 25분 전 #1911953

    네, 스킨에서 {@ Context::addMetaTag(.....)} 이런 식으로 메타 태그를 추가하셔도 됩니다.