페이지 게시

:bookmark: 이 가이드는 Discourse에서 페이지 게시(Page Publishing) 기능을 사용하는 방법에 대해 다룹니다. 이 기능을 사용하면 스태프(Staff) 사용자는 토ピック을 사용자 정의 스타일링이 적용된 독립형 정적 페이지로 변환할 수 있습니다. 예를 들어 서비스 약관 및 개인정보 처리방침 페이지 등이 있습니다.

:person_raising_hand: 필요한 사용자 권한: 스태프(Staff)

Discourse에서 정적 페이지 게시하기

페이지 게시(Page Publishing) 기능은 스태프(Staff) 사용자가 토ピック에서 독립형 정적 페이지를 생성할 수 있도록 합니다. 이는 서비스 약관이나 개인정보 처리방침 페이지를 생성하는 과정과 유사합니다.

요약

이 문서에서는 다음 내용을 다룹니다:

  • 페이지 게시 활성화
  • 토ピック을 페이지로 게시하기
  • 토ピック 게시 해제
  • 일반적인 문제 및 해결 방법
  • 자주 묻는 질문(FAQ)
  • 추가 자료

페이지 게시 활성화

  1. Admin > Settings로 이동합니다.
  2. enable page publishing 설정을 활성화합니다.
    Enable Page Publishing

로그인 필요 시 페이지 게시 활성화

사용자가 로그인하지 않은 상태에서도 게시된 페이지가 표시되도록 하려면:

  1. Admin > Settings에서 show_published_pages_login_required 설정을 활성화합니다.
    Show Published Pages

토ピック 게시하기

  1. 공개 토ピック의 첫 번째 게시물로 이동하여 말줄임표 아이콘(...)을 선택합니다.
    Ellipsis Menu

  2. 렌치 아이콘을 선택합니다.
    Wrench Icon

  3. “Page Publishing” 옵션을 선택합니다.

  4. 슬러그를 확인(게시물 제목에서 미리 입력될 수 있음)하고 게시된 페이지의 URL을 미리 볼 수 있는 모달 대화상자가 표시됩니다.

:warning: 페이지 게시를 허용하려면 secure upload 사이트 설정을 비활성화해야 합니다.

:information_source: 호스팅 사이트의 경우 secure uploads는 Enterprise 플랜에서만 사용할 수 있습니다.

게시된 토ピック

게시된 페이지

토ピック 게시 해제

  1. 알림 아래에서 Publishing Settings를 선택합니다.

  2. Unpublish를 클릭합니다.

  3. 페이지가 게시 해제됩니다.

일반적인 문제 및 해결 방법

로그아웃 상태에서는 게시된 페이지가 표시되지 않음

Admin > Settings에서 show_published_pages_login_required 설정이 활성화되어 있는지 확인하십시오.

게시된 페이지에 Discourse 헤더 추가

현재 정적 페이지는 최소한의 구성을 유지하도록 설계되어 있으며, 일반적인 Discourse 헤더와 푸터가 포함되지 않습니다.

자주 묻는 질문(FAQ)

FAQ 또는 소개 페이지를 공개할 수 있나요?

원하는 내용으로 새 토ピック을 생성하고 이를 페이지로 게시할 수 있습니다. 사이트 설정의 링크를 이 새 페이지를 가리키도록 변경하십시오.

게시된 페이지의 모양을 사용자 정의하는 방법은 무엇인가요?

Admin > Customize > Themes > CSS에서 HTML 문서의 구조와 해당하는 CSS 선택자를 사용하여 사용자 정의 스타일을 적용하십시오.

추가 자료

119개의 좋아요
Best landing page solution
ProCourse Static Pages
How to add a new page into the community? (Login isolated page)
Blog Post Styling
Is anyone here using their Discourse instance as their entire website?
Integrating webpage to current forum
Open (anon) interaction with a forum
Is there an upper limit to how many pages can be published?
Shared Drafts: Allow staff to collaborate on posts before publishing
Discourse + CMS, which one?
How do I redirect urls or create new ones?
Host HTML page on Discourse install
Is there any way to listen User login event using Theme component
How to share only few posts to public as links?
Open (anon) interaction with a forum
Create a "Docs" page like discource meta's
Invite people to reply to a topic without them needing to create an account
Allow anonymous users to view a topic?
What's the usage of "show published pages login required" setting?
How to add contact us page?
Embed my Discourse Forum as IFrame
Is there any way to restrict posting in a topic to members of a group, but allow all users to read the topic?
Order posts by Title
Edit Code
Published page not visible?
Inline Tooltips
Making the About and FAQ visible to anon
Allow published pages to be visible to anon
Customize login page
7 myths why a blog isn't needed in the discourse core
Filter view for muted categories
Landing Page
Customizing FAQs and Guidelines
ProCourse Static Pages
Can I use secure media and page publishing simultaneously in Discourse?
Publishing - how deep/good is fine-grained permisson control?
Publish Direct Messages
500 character ‘Reject Reason’ is too small a limit
How do I create a blank page within Discourse
How-to use Discourse for managing a collaborative newsletter?
Customize Login pop-up box?
Building a custom html page in discourse
Page for not-logged in users with a single topic displayed
Duplicate Terms of Service/Privacy Policy
Paid Groups
Help custom page?
Public Static pages and Private Forums - possible?
Should Discourse make an effort to become the next best "CMS"
Is It Possible to Create Custom Pages in Discourse?
How to Enable Terms of Service and Privacy Policy Pages in Discourse?
Is It Possible to Create Custom Pages in Discourse?
Blank Pages Related Help
How do root level links work?
How can I make a static page?
Creating custom pages like "About" and "FAQ"
Static pages for things like guidelines?
Multi-factor authentication enforcement lock in without help
Can you create a custom landing page?
Category Previews
Using Discourse as a News Blog and Forum - Any Known Good Examples?
Discourse for Teams is here!
How to make a website with Discourse
Generate static file in discourse
[Urgent] privacy policy page
Adding a static web page
DiscoTOC - automatic table of contents
Create a custom page with theme cli?
Change topic visibility in an admin category to public
Category Previews
Create a new text page option?
How to hide a single topic from showing up in "latest"?
ProCourse Static Pages
Control the visibility of /faq and /about
[Question/Request] Featured image url for post
Custom Homepage for Groups
Embedding private discussions on a wordpress site
Table of Contents not working on Published Pages

아직 직접 테스트를 해보지 않아 아래 내용은 현실과 다소 거리가 있을 수 있지만:

이 권한 모델은 페이지 콘텐츠가 항상 두 번 표시되는 시나리오를 만드는 것 같습니다. 하나는 관련 Discourse 카테고리에서, 다른 하나는 게시된 페이지 자체에서입니다. 일반 대중에게 Discourse 사용자 기반과 유사하거나 동일한 페이지를 게시하려는 경우, 이는 당연히 중복으로 보입니다.

반면, 페이지에 “world readable” 플래그를 사용할 수 있다면, 이를 보거나 편집할 수 있는 사용자를 소규모 그룹으로 제한할 수 있습니다. 그러면 다른 Discourse 사용자에게 콘텐츠가 제공되는 유일한場所は 게시된 링크 자체가 될 것입니다.

(여기서 "문서 사이트"라는 사용 사례를 염두에 두고 있습니다.)

그렇지 않다면, 직접 테스트해 볼 생각에 꽤 기대가 됩니다!

8개의 좋아요

정말 멋진 업데이트입니다. 그리고 사용자들의 목소리에 귀를 기울여 주셔서 다시 한번 감사드립니다. Discourse가 가진 ‘우리 모두를 위해 더 나은 것을 만들어 나가자’는 분위기가 정말 마음에 듭니다! 이 기능을 적극 활용할 예정입니다.

한 가지 용도(조금 문제가 생긴 설치를 복구하는 것)에 대해 논의하던 중, 다른 사용자가 케이크에 올라갈 수 있는 남은 아이싱(추가 개선 사항)을 하나 짚어 주셨습니다:

혹시 /faq와 /about 페이지를 공개할 수 있는 방법이 있을까요? 현재 ‘로그인 필요’ 사이트에서는 이 페이지들이 숨겨져 있습니다. 물론 방금 출시된 /faq 관련 기존 기능을 활용하여 자체 페이지를 만들고, 설정에서 링크를 변경하며, 해당 페이지로 명시적으로 링크를 걸 수 있습니다. 하지만 이 방법은 깔끔하지 않고, 기존 내비게이션에서 해당 페이지로 가는 경로는 여전히 숨겨진 상태입니다. 물론 /about 페이지의 경우 그렇게 할 수도 없습니다.

9개의 좋아요

이 기능과 잘 어울릴 만한 것 중 하나는 게시물을 원박스(Onebox) 호환으로 만들어 사람들이 콘텐츠를 쉽게 공유할 수 있도록 하는 것입니다.

15개의 좋아요

죄송합니다. 저는 HTML/CSS 분야 초보자라 무식한 질문을 드리는 것 같습니다. 하지만 게시된 페이지에 테마 색상 설정을 적용하려면 어떻게 해야 할까요? 가장 간단하게 말하자면, 포럼에 접근할 때와 동일한 다크모드 경험을 게시된 페이지에도 제공하기 위해 어두운 배경과 흰색 텍스트를 사용하고 싶습니다.

이 기능이 이미 제품에 포함되어 있는지, 아니면 HTML/CSS를 직접 다뤄야 하는지 궁금합니다. 후자라면 방향을 잡아줄 수 있는 조언을 주실 수 있을까요? 감사합니다!

4개의 좋아요

이 내용을 별도의 기능 요청으로 만들어 주시겠습니까? 이는 페이지 게시와 관련이 없으며, 가능하게 하려면 페이지 게시 관련 설정을 변경할 필요가 없기 때문입니다. 이러한 “정적” 페이지들이 모두 더나저 동일한 동작을 하도록 하는 것이 더 좋다는 점에는 동의하지만, 해결책이 여러 가지(아무것도 하지 않기? 사이트 설정 추가? 페이지 게시로 마이그레이션?)로 인해 이 주제를 위한 전용 토픽을 만드는 것이 좋을 것 같습니다.

8개의 좋아요

게시된 페이지에 GTM이 로드되지 않나요? 개선되면 좋겠습니다.

2개의 좋아요

음, 정말 좋은 지적입니다.

여기서 해결책을 고민해 보고 있는데… type="text/javascript"와 type="text/discourse-plugin"을 다르게 처리하면 작동할까요? API에는 후자가 필요하죠?

5개의 좋아요

네, 테마 필드에 text/javascript를 사용하는 것을 이미 지원하고 있다고 생각합니다. 따라서 이 부분에는 분명히 해결책이 있습니다.

7개의 좋아요

그것은 훌륭할 것입니다.

1개의 좋아요

따라서 현재 반응형 게시 페이지를 만드는 것은 불가능합니다. 그리고 이 사이트는 특히 다음 사항을 원합니다.

  1. 공개 미디어에 공유할 때 이미지가 사용 가능하고,
  2. 반응형/크기 조절이 가능한 이미지가 표시되도록 하는 것, 특히 모바일에서는 --아, 모바일은 그냥 CSS로 이미지 크기를 조절하면 되겠네요–그렇게 하면 작동할까요?
6개의 좋아요

게시된 페이지에 Discourse 헤더가 있는 것에 +1입니다. 제 웹사이트 로고, 커스텀 헤더 링크, 그리고 사랑스러운 햄버거 메뉴가 너무 그리워요 :slight_smile:

또 다른 특이점: 게시물에서는 라이트박스 이미지가 멋진 팝업으로 열리는데, 게시된 페이지에서는 새 탭으로 열립니다…

7개의 좋아요

필요한 것은 이러한 기능을 추가하는 테마 컴포넌트 세트라고 생각합니다. 이전에 이 기능을 사용해야 했던 마지막 클라이언트는 주제 생성자를 제거하기를 원했습니다. 사람들이 이 부분에 대해 무엇을 필요로 할지 예측하기는 쉽지 않다고 생각합니다!

6개의 좋아요

현재 공개된 페이지에 “단순”(API가 아닌) JavaScript 지원을 추가하기 위한 진행 중인 작업이 있나요? 아니면 단기~중기적으로는 이 부분을 포기해야 하나요?

9개의 좋아요

이 페이지에서 외부의 비-Discourse JSON을 표시할 수 있을까요? 여기서는 PHP 코드를 사용할 수 없고, Discourse가 대부분의 HTML을 제거하기 때문에 어떻게 해야 할지 모르겠습니다..

2개의 좋아요

게시된 페이지에서 문제가 발생했습니다. 게시된 페이지에서 코드 블록의 내용을 복사하는 버튼이 표시되지 않습니다. 스크린샷: Screenshot by Lightshot. 마우스를 블록 위에 올려도 버튼이 나타나지 않습니다. 로그인 상태에서는 모든 기능이 정상적으로 작동합니다.

누군가 이 문제를 재현할 수 있을까요? 해결책이 있을까요?

2개의 좋아요

@riking 감사합니다!

실제로 테마 컴포넌트의 header 또는 footer에 있는 경우, 게시된 페이지에서 “일반적인” text/javascript가 실행되는 것 같습니다.

8개의 좋아요

아! 그래서 테마 컴포넌트가 페이지 발행과 함께 작동하도록 하는 해킹 방식이 있는 것 같습니다.

발행된 페이지에 헤더/푸터를 추가하는 방법을 알아보고 있는데, 테마 컴포넌트가 적절한 방법인 것 같습니다. 하지만 가까운 미래에 깨질 수 있는 것을 구현하는 것은 좋은 방법이 아닌 것 같습니다.

@riking, header 또는 footer의 text/javacript 타입이 발행된 페이지에서 작동하는 것은 의도된 것이 아닌 것으로 보입니다. 이것이 _수정_될 예정인지, 아니면 발행된 페이지를 확장하기 위해 _사용_될 예정인가요?

DiscPage의 저자인 @syl은 페이지 발행 기능을 사용하여 DiscPage 플러그인을 다시 구현할 가능성을 언급했습니다. @syl, 여전히 이 계획을 가지고 계신가요? @riking, 두 기능을 통합하는 가장 적은 저항의 경로는 무엇이라고 생각하시나요?

7개의 좋아요

불행히도 “Page Publishing” 기능은 제 요구사항을 충족하지 못합니다. 제가 이 기능을 사용하려면 게시된 페이지가 다음 조건을 충족해야 합니다:

  1. 표준 Discourse 헤더(예: 이용약관과 개인정보처리방침과 동일하게)을 포함하여 일반적인 Discourse 레이아웃 내에서 표시되어야 하고,
  2. 일반(꾸며진) 주제처럼 렌더링되어야 하며, 즉 bbcode와 플러그인을 지원해야 합니다.
15개의 좋아요

그동안 저는 디스코스의 기본 커스터마이징 기능을 사용했습니다:

  1. 추가된 요소를 식별합니다. 예를 들어, published-page-footer-links CSS 클래스를 사용할 수 있습니다.
  2. CSS를 커스터마이징하여 이 요소를 기본적으로 숨기고 게시된 페이지에서만 표시되도록 설정합니다.
  3. Footer 공간에 해당 요소를 추가합니다.

2. CSS에 다음을 추가합니다:

/* Only show footer links on published pages */
.published-page-footer-links { display: none; }
.published-page .published-page-footer-links { display: block;}

3. Footer에 다음을 추가합니다:

<nav class="published-page-footer-links">
Hi there! This is the footer for published pages!
</nav>
8개의 좋아요