Phonemos User Guide

Overview

Public Site allows you to publish Phonemos topics as standalone websites. You can customize the appearance of your public site using CSS stylesheets and HTML templates.

How it Works

When a topic is published to a public site:

  • The content is rendered server-side and served as static HTML

  • Custom themes can provide CSS styling and HTML layout templates

  • Interactive components (search, language switch, table of contents) are hydrated on the client

Customization Options

There are two main ways to customize your public site:

  1. CSS Stylesheets - Override default styles by targeting the built-in CSS classes. See CSS Classes for the available classes.

  2. HTML Templates - Provide a custom Handlebars template to completely control the page structure. See HTML Template for the available template variables.

JavaScript Functions

The following JavaScript functions are available on all public site pages:

phonemos_setLanguage

1 phonemos_setLanguage(lang: string): void

Override the language the page is displayed in. When called, the page will reload in the specified language and the user's language preference will be stored via a cookie.

Example:

1 2 3 4 5 // Switch to German phonemos_setLanguage('de') // Switch to English phonemos_setLanguage('en')

scrollContent

1 window.scrollContent(id: string): void

Scroll the content area to a specific element by its ID. This is used internally by the table of contents for smooth scrolling navigation.

Supported Content Types

The public site supports the following content types:

  • Wikipages - Regular documentation pages and announcements

  • Announcements Channels - News/blog-style listings with RSS, Atom, and JSON feed support

  • Files - Direct download links for attached files