Developer Docs Embed Components
MediaOS Embed
Embed Components

MediaOS Embed Reference

Drop-in custom HTML elements that bring powerful MediaOS features to any website — WordPress, static HTML, or any CMS. Include the script once; use the tags anywhere.

📦
Components
40+
Framework
Vue 3 Custom Elements
🔌
Install Method
<script type="module">
🌐
Script CDN
mos-scripts.com

Getting Started

MediaOS Embed components are standard HTML custom elements powered by Vue 3. They connect automatically to your MediaOS account using the metadata tags on each page.

ℹ️Install the MediaOS WordPress plugin to have the script and meta tags automatically injected. For non-WordPress sites follow the manual setup below.

Installation

Add the following to every page where you want to use embed components. Place the script tag at the bottom of <body> or use defer.

HTML – Required meta tags in <head>
<!-- Replace values with your real MediaOS account details --> <meta name="mediaos:id" content="YOUR_WEBSITE_TOKEN"/> <meta name="mediaos:postid" content="CURRENT_POST_ID"/> <meta name="mediaos:authenticated" content="true_or_false"/>
HTML – Script include (before </body>)
<script type="module" src="https://mos-scripts.com/a/main.js"></script>

Once the script loads, all MediaOS custom elements are available. Place any component tag in your HTML and it will render automatically.

JavaScript API

After the script loads, a global window.MediaOS object is available with helper methods.

MethodSignatureDescription
AddToCart(offerId: number)Add an offer to the shopping cart by ID.
GetContactToken() → string|nullReturn the current authenticated contact's JWT token.
RunWorkflow(id: number)Trigger a MediaOS workflow by ID.
UserSsoJwt(jwt: string)Authenticate a user via a custom SSO JWT token.
ClearCache()Clear cached account/user settings from local storage.
GetUser() → User|nullReturn the current user object (or null if not logged in).
LogStats(isFinal?: bool)Manually flush an analytics stat event to the server.
AdServerImpression(adInsertionID, adID)Log an ad impression event.
AdServerClick(adInsertionID, adID)Log an ad click event.
AdServerHover(adInsertionID, adID)Log an ad hover event.

Triggering Workflows via JavaScript

HTML
<script type="module" id="mosScript" src="https://mos-scripts.com/a/main.js"></script> <script> document.getElementById('mosScript').addEventListener('load', function() { window.MediaOS.RunWorkflow('INSERT_WORKFLOW_ID_HERE'); }); </script>

Advertising

Display MediaOS ad creatives on any page. Supports fallback content when no ad is available.

<mos-creative>
Ad unit — displays a served creative

Description

Renders a MediaOS-served ad creative. Slot content is shown as a fallback when no MediaOS ad is available (e.g., a Google Ad Manager tag or a default image).

Usage

HTML
<!-- Basic --> <mos-creative></mos-creative> <!-- Constrained size --> <mos-creative max-width="300" max-height="250"></mos-creative> <!-- Fallback to Google Ad --> <mos-creative> <script>googletag.cmd.push(function() { googletag.display('your_slot'); });</script> </mos-creative> <!-- Fallback to image --> <mos-creative> <img src="default-ad.png"/> </mos-creative>

Props

PropTypeDefaultRequiredDescription
unit-idsstring""optionalComma-separated list of ad unit IDs to target.
max-widthnumber2000optionalMaximum width of the rendered ad in pixels.
max-heightnumber2000optionalMaximum height of the rendered ad in pixels.
product-idnumbernulloptionalFilter creatives by a specific product ID.
advertiser-idnumbernulloptionalFilter creatives by a specific advertiser ID.
namestringnulloptionalNamed identifier for this ad slot (for debugging).
gam-slotstring""optionalGoogle Ad Manager slot name for GAM passback integration.
debugbooleanfalseoptionalEnable debug overlay showing ad targeting information.

Best of Voting

Embed the full "Best of" voting experience, winner displays, and quick-vote QR code generators.

<mediaos-best-of-voting-page>
Full voting ballot page

Description

Renders the complete Best of voting ballot for the active voting campaign. Users must be logged in to vote. Automatically opens the registration modal if not authenticated.

Usage

HTML
<mediaos-best-of-voting-page></mediaos-best-of-voting-page> <!-- Constrained in a scrollable container --> <mediaos-best-of-voting-page style="max-height:600px;overflow-y:auto;"></mediaos-best-of-voting-page>

Props

PropTypeDefaultRequiredDescription
idnumbernulloptionalVoting campaign ID. Defaults to the active campaign if omitted.
<mediaos-best-of-quick-vote-generator>
QR code quick-vote generator

Description

Displays a QR code generator tool for creating quick-vote links that can be printed or displayed at events.

Usage

HTML
<mediaos-best-of-quick-vote-generator></mediaos-best-of-quick-vote-generator>

No configurable props. The component reads the active voting campaign automatically.

<mediaos-best-of-winners>
Published winners display

Description

Displays the published Best of winners for a specific voting campaign, grouped by category. Supports year selection.

Usage

HTML
<mediaos-best-of-winners id="42"></mediaos-best-of-winners>

Props

PropTypeDefaultRequiredDescription
idnumberrequiredThe Best of voting campaign ID.

Bookmarks

Allow logged-in users to bookmark pages or business directory profiles.

<mediaos-bookmarks>
Bookmark toggle button

Description

A heart/bookmark icon that lets logged-in users save the current page or a specific content object. Defaults to bookmarking the current post page when no object-id is provided.

Usage

HTML
<!-- Bookmark current page --> <mediaos-bookmarks></mediaos-bookmarks> <!-- Bookmark a specific object --> <mediaos-bookmarks object-id="123" object-type="MemberBusinessProfiles"></mediaos-bookmarks>

Props

PropTypeDefaultRequiredDescription
object-idnumber|stringcurrent postoptionalThe ID of the object to bookmark. Defaults to the current page post ID.
object-typestringWebsitePagesoptionalThe type of object: WebsitePages or MemberBusinessProfiles.
for-expobooleanfalseoptionalEnable expo-specific bookmark behavior.
<mediaos-manage-bookmarks>
User's saved bookmarks list

Description

Displays all of the current user's saved bookmarks in a list view. Requires the user to be logged in.

Usage

HTML
<mediaos-manage-bookmarks></mediaos-manage-bookmarks>

No configurable props.

Classifieds

<mediaos-classifieds>
Classified ads listing

Description

Displays a classified ads listing with month/year browsing. Content is filtered by the MediaOS website configuration.

Usage

HTML
<mediaos-classifieds></mediaos-classifieds> <!-- Filter to a specific classifieds section --> <mediaos-classifieds id="5"></mediaos-classifieds>

Props

PropTypeDefaultRequiredDescription
idnumbernulloptionalOptional classifieds section ID to filter results.

Content

Embed article feeds, individual content tiles, knowledge bases, content submission forms, and registration walls.

<mediaos-content-feed>
Article / content feed

Description

Renders a filterable list of content/articles from a MediaOS website or specific categories. Includes category navigation, pagination, and optional images.

Usage

HTML
<mediaos-content-feed></mediaos-content-feed> <!-- Specific website and categories with images --> <mediaos-content-feed website-id="17" category-ids="3,7" show-image="true" image-position="left"> </mediaos-content-feed>

Props

PropTypeDefaultRequiredDescription
category-idsstringnulloptionalComma-separated list of category IDs to filter by.
website-idstringnulloptionalMediaOS website ID to pull content from.
show-imagestring"false"optionalSet to "true" to display featured images.
image-positionstring"left"optionalPosition of the image: left or top.
newsfeed-idsstring""optionalComma-separated newsfeed IDs to include.
targetstring"_self"optionalLink target attribute (_self or _blank).
show-category-navigationstring"true"optionalSet to "false" to hide category filter tabs.
open-in-new-tabstring"false"optionalOpen article links in a new tab.
show-adsstring"false"optionalInject ad units between content items.
max-excerpt-lengthnumber200optionalMaximum character length of article excerpt preview.
<mediaos-content-tile>
Single article tile

Description

Displays a single article/post as a card tile with title, image, and link. Fetches post data from the WordPress REST API.

Usage

HTML
<mediaos-content-tile post-id="429"></mediaos-content-tile> <!-- Manual data (no API fetch) --> <mediaos-content-tile set-title="My Article" set-url="https://example.com/my-article" set-image-url="https://example.com/image.jpg"> </mediaos-content-tile>

Props

PropTypeDefaultRequiredDescription
post-idnumbernulloptionalWordPress post ID. Fetches title and image from WP REST API.
set-titlestringnulloptionalManually set the tile title (overrides API fetch).
set-urlstringnulloptionalManually set the tile link URL.
set-image-urlstringnulloptionalManually set the tile image URL.
<mediaos-content-submission>
Content / press release submission form

Description

A form that allows users to submit content (such as press releases or news items) directly from your website. Supports optional payment gating.

Usage

HTML
<mediaos-content-submission></mediaos-content-submission> <!-- With a category and optional cost --> <mediaos-content-submission category-id="3" cost="25.00"> </mediaos-content-submission>

Props

PropTypeDefaultRequiredDescription
costnumberoptionalIf set, user must pay this amount before submitting.
category-idnumberoptionalPre-assign submissions to a specific content category.
typestringfalseoptionalContent type identifier for the submission.
business-profile-idnumbernulloptionalAssociate the submission with a business directory profile.
<mediaos-content-registration-wall>
Registration / login gate for article content

Description

Displays a registration prompt that gates access to content. Reads the current page's post ID from the global store and checks registration rules configured in MediaOS.

Usage

HTML
<mediaos-content-registration-wall></mediaos-content-registration-wall>

No configurable props. The component reads the current post ID from the mediaos:postid meta tag automatically.

<mediaos-kb-display>
Knowledge base browser

Description

Renders a full knowledge base UI with category navigation, search, and article display. Suitable for help centers and documentation portals.

Usage

HTML
<mediaos-kb-display></mediaos-kb-display> <!-- Filter to specific website and post types --> <mediaos-kb-display website-id="5" category-ids="10,12" post-types="article,faq"> </mediaos-kb-display>

Props

PropTypeDefaultRequiredDescription
website-idstringnulloptionalMediaOS website ID to pull knowledge base content from.
category-idsstringnulloptionalComma-separated list of category IDs to include.
post-typesstringnulloptionalComma-separated list of content post types to include.

Business Directory

Full-featured business directory components — searchable listings, individual profiles, list views, and expo floor plans.

<mediaos-business-directory>
Full searchable directory

Description

Renders the full business directory with category tiles, search, map integration, and paginated business listings.

Usage

HTML
<mediaos-business-directory></mediaos-business-directory>

Props

PropTypeDefaultRequiredDescription
heightstring"100%"optionalCSS height of the directory container.
product-idnumbernulloptionalFilter directory to a specific product/tier.
idnumbernulloptionalPre-select a business by ID on load.
max-sub-categoriesnumber3optionalMaximum number of sub-categories to display per category tile.
mapbooleantrueoptionalSet to false to hide the map view.
<mediaos-business-directory-lists>
Directory filtered by list

Description

Displays the business directory filtered to a specific curated list of businesses, with optional map.

Usage

HTML
<mediaos-business-directory-lists id="10"></mediaos-business-directory-lists>

Props

PropTypeDefaultRequiredDescription
idnumberrequiredThe business list ID to display.
heightstring"100%"optionalCSS height of the container.
mapbooleantrueoptionalSet to false to hide the map.
<mediaos-business-lists>
All business lists home

Description

Displays the home screen for all business lists — a grid of all configured curated business lists.

Usage

HTML
<mediaos-business-lists></mediaos-business-lists>

No configurable props.

<mediaos-business-profile>
Single business profile page

Description

Renders the full detail view of a single business directory profile including address, map, social links, hours, images, and related articles.

Usage

HTML
<mediaos-business-profile id="1"></mediaos-business-profile>

Props

PropTypeDefaultRequiredDescription
idnumberrequiredThe business profile ID to display.
display-single-columnbooleanfalseoptionalForce single-column layout.
<mediaos-business-profile-list>
Business profile list view

Description

Displays businesses from a specific profile list as a scrollable card list with map integration.

Usage

HTML
<mediaos-business-profile-list id="3"></mediaos-business-profile-list>

Props

PropTypeDefaultRequiredDescription
idnumber|stringrequiredThe business profile list ID.
heightstring"100%"optionalCSS height of the container.
<mediaos-expo-directory>
Expo / event floor plan

Description

Embeds an interactive expo floor plan with clickable booth locations and an optional directory listing of exhibitors. Commonly used for trade shows and community events.

Usage

HTML
<mediaos-expo-directory id="85"></mediaos-expo-directory> <!-- With exhibitor list shown --> <mediaos-expo-directory id="85" :hide-list="false"></mediaos-expo-directory>

Props

PropTypeDefaultRequiredDescription
idnumber|stringrequiredThe expo/floor plan ID.
heightstring"100%"optionalCSS height of the floor plan container.
hide-listbooleanfalseoptionalSet to true to hide the side exhibitor directory list.

Donations & Fundraising

Accept donations, track fundraising goals, and recognize donors on your website.

<mediaos-support-us>
Donation / membership widget

Description

A flexible fundraising widget supporting monthly, yearly, one-time, and custom donation amounts. Links to MediaOS offers for payment processing.

Usage

HTML
<mediaos-support-us monthly-offer-id="11" yearly-offer-id="12" one-time-offer-id="13"> </mediaos-support-us>

Props

PropTypeDefaultRequiredDescription
monthly-offer-idnumberoptionalMediaOS offer ID for a monthly recurring donation.
yearly-offer-idnumberoptionalMediaOS offer ID for an annual donation.
one-time-offer-idnumberfalseoptionalMediaOS offer ID for a one-time donation.
membership-labelstring""optionalLabel text shown above the donation type selector.
button-textstring"Support Us"optionalCall-to-action button text.
amountsarray[20,40,100,120,220,320]optionalPreset dollar amounts shown as quick-select buttons.
<mediaos-support-goal>
Fundraising progress bar

Description

Displays an animated progress bar showing progress toward a fundraising goal for the current month or a custom time period.

Usage

HTML
<mediaos-support-goal id="1" target="5000"></mediaos-support-goal>

Props

PropTypeDefaultRequiredDescription
idnumberoptionalDonation goal configuration ID.
targetnumber0optionalDollar amount fundraising target.
typestring"month"optionalTime period for the goal: month or year.
colorstringprimary coloroptionalCSS color for the progress bar fill.
<mediaos-donors>
Donor recognition wall

Description

Displays a grid of donor names pulled from a MediaOS donation campaign. Useful for recognition pages and thank-you walls.

Usage

HTML
<mediaos-donors id="1" columns="4"></mediaos-donors>

Props

PropTypeDefaultRequiredDescription
idstring""optionalDonation campaign or offer ID to pull donors from.
columnsnumber4optionalNumber of columns to split the donor names into.

E-Commerce

Sell memberships, products, and events directly from your website with MediaOS checkout components.

<mediaos-store>
Product / offer store

Description

Displays a grid of purchasable offers from MediaOS — memberships, events, digital products, or physical products.

Usage

HTML
<mediaos-store></mediaos-store> <!-- Show only memberships --> <mediaos-store show-memberships="true" limit="6"></mediaos-store>

Props

PropTypeDefaultRequiredDescription
show-digital-productsbooleanfalseoptionalInclude digital product offers.
show-eventsbooleanfalseoptionalInclude event ticket offers.
show-membershipsbooleanfalseoptionalInclude membership/subscription offers.
show-physical-productsbooleanfalseoptionalInclude physical product offers.
go-to-checkoutbooleanfalseoptionalImmediately navigate to checkout after adding to cart.
limitnumber10optionalMaximum number of offers to display.
button-labelstring"Add to Cart"optionalText for the add-to-cart button on each tile.
membership-type-idnumbernulloptionalFilter to a specific membership type ID.
<mediaos-checkout>
Full checkout / cart UI

Description

Renders the full MediaOS checkout experience including cart review, address entry, payment, and order confirmation. Place this on your dedicated checkout page.

Usage

HTML
<mediaos-checkout></mediaos-checkout>

No configurable props. The cart contents are managed globally via the MediaOS cart store.

<mediaos-cart-icon>
Shopping cart icon for nav bar

Description

A compact shopping cart icon with item count badge. Click to open a mini cart dropdown. Designed to be placed in a navigation bar.

Usage

HTML
<!-- In a nav bar --> <mediaos-cart-icon height="50"></mediaos-cart-icon>

Props

PropTypeDefaultRequiredDescription
heightnumber40optionalHeight of the icon in pixels; adjusts internal padding automatically.
icon-onlybooleanfalseoptionalShow only the icon without the item count badge.
<mediaos-checkout-add-button>
Add-to-cart button

Description

A configurable add-to-cart button for a specific MediaOS offer. Can display as a button, text link, or show the item price as its label.

Usage

HTML
<!-- Basic button --> <mediaos-checkout-add-button offer-id="3"></mediaos-checkout-add-button> <!-- Go directly to checkout after adding --> <mediaos-checkout-add-button offer-id="3" go-to-checkout="true" label="Buy Now"> </mediaos-checkout-add-button>

Props

PropTypeDefaultRequiredDescription
offer-idnumberrequiredThe MediaOS offer ID to add to the cart.
labelstring"Add to Cart"optionalButton label text.
display-typestring"button"optionalRender as button or text link.
go-to-checkoutbooleannulloptionalIf true, navigates directly to the checkout page after adding.
price-as-labelbooleannulloptionalReplace the button label with the offer price.
button-colorstringnulloptionalCSS background color of the button.
text-colorstringnulloptionalCSS text color of the button.
sizestringnulloptionalButton size: sm, md, or lg.
show-quantitybooleanfalseoptionalShow a quantity selector next to the button.
<mediaos-one-page-subscribe>
Single-page membership checkout

Description

A streamlined one-page subscription checkout flow. Displays available membership offers and the checkout in a single view. Pass a form-id to include a custom form step in the checkout flow.

Usage

HTML
<mediaos-one-page-subscribe></mediaos-one-page-subscribe> <!-- With custom form step --> <mediaos-one-page-subscribe form-id="7"></mediaos-one-page-subscribe>

Props

PropTypeDefaultRequiredDescription
form-idstringnulloptionalOptional MediaOS form ID to embed within the checkout flow.

Events

<mediaos-event-calendar>
Interactive event calendar

Description

Displays a full interactive calendar of events from MediaOS. Supports month/list views and event detail popups. Set a height via inline styles for best results.

Usage

HTML
<mediaos-event-calendar style="height:500px;"></mediaos-event-calendar>

No configurable props. Events are automatically loaded from the configured MediaOS website.

Forms

<mediaos-form>
Custom form embed

Description

Renders any form built in the MediaOS form builder. Supports redirect-on-submit, pre-filling fields via object-id, and optional payment steps.

Usage

HTML
<mediaos-form id="11"></mediaos-form> <!-- With redirect after submit --> <mediaos-form id="11" redirect-url="https://example.com/thank-you"> </mediaos-form>

Props

PropTypeDefaultRequiredDescription
idnumbernullrequiredThe MediaOS form ID to render.
redirect-urlstringnulloptionalURL to redirect to after the form is successfully submitted.
object-idnumbernulloptionalPre-fill form fields from an existing MediaOS object (e.g., a business profile).

Forum & Comments

Add community discussion features — article comments, full forum home, and group pages.

<mediaos-comment-feed>
Threaded comment feed

Description

Displays a threaded list of comments for a specific post or group, with the ability to post new comments (requires login).

Usage

HTML
<!-- Comments for a specific post --> <mediaos-comment-feed post-id="42"></mediaos-comment-feed> <!-- Group discussion --> <mediaos-comment-feed group-id="5" is-forum="true"></mediaos-comment-feed>

Props

PropTypeDefaultRequiredDescription
post-idnumberoptionalWordPress/MediaOS post ID to load comments for.
group-idnumberoptionalGroup ID for forum/group discussions.
contact-idnumberoptionalFilter comments by a specific contact/author.
is-forumbooleanoptionalEnable forum-specific display and UI.
can-new-postbooleantrueoptionalShow the "New Post" / "New Comment" compose area.
<mediaos-comments>
Article comments section

Description

Lightweight comments component for embedding below articles. Reads the current post ID from the page meta tag automatically when no comment-id is specified.

Usage

HTML
<mediaos-comments></mediaos-comments>

Props

PropTypeDefaultRequiredDescription
comment-idnumbernulloptionalLoad a specific comment thread by ID.
group-idnumbernulloptionalScope to a specific group.
show-commentsbooleanfalseoptionalExpand the comment thread by default.
<mediaos-forum-home>
Full forum home page

Description

The complete community forum home — includes tabbed navigation for news, groups, members, and newsletter management.

Usage

HTML
<mediaos-forum-home style="height:600px;"></mediaos-forum-home>

Props

PropTypeDefaultRequiredDescription
default-tabstring"news"optionalTab shown on load: news, groups, members, or newsletters.
<mediaos-groups>
Community groups directory

Description

Displays a directory of community groups that users can browse and join. Requires login to join a group.

Usage

HTML
<mediaos-groups></mediaos-groups>

No configurable props.

Newsletters

Subscribe visitors, let users manage their subscriptions, embed inline subscribe forms within articles, and browse newsletter archives.

<mediaos-newsletter-subscribe>
Newsletter subscribe form

Description

A compact sign-up form for newsletter subscriptions. Optionally auto-subscribes to specific newsletter IDs and supports email verification bypass for trusted contexts.

Usage

HTML
<mediaos-newsletter-subscribe></mediaos-newsletter-subscribe> <!-- Auto-subscribe and redirect --> <mediaos-newsletter-subscribe newsletter-ids="3,7" redirect-url="https://example.com/subscribed" skip-verify="true"> </mediaos-newsletter-subscribe>

Props

PropTypeDefaultRequiredDescription
redirect-urlstringnulloptionalURL to redirect the visitor to after successful subscription.
newsletter-idsstringnulloptionalComma-separated newsletter IDs to auto-subscribe the user to.
skip-verifybooleanfalseoptionalSkip the email confirmation step (reduces spam protection).
skip-namebooleanfalseoptionalHide the first/last name fields (email only).
sso-enabledbooleantrueoptionalShow SSO (Google, etc.) sign-in options in the form.
<mediaos-newsletter-article-form>
Inline article subscribe prompt

Description

Automatically injects a newsletter subscribe form after the first quarter of an article's paragraphs. The form only shows to non-logged-in users. Point it at your article container using article-id or article-class.

Usage

HTML
<!-- The form will inject itself into the article --> <mediaos-newsletter-article-form article-id="my-article-content" title="Stay in the loop!" text="Get our latest stories delivered to your inbox." newsletter-ids="3" redirect-url="https://example.com/thanks"> </mediaos-newsletter-article-form> <div id="my-article-content"> <!-- Your article paragraphs --> </div>

Props

PropTypeDefaultRequiredDescription
article-idstringoptionalHTML id of the article container element.
article-classstringoptionalCSS class of the article container element (alternative to article-id).
titlestring"Subscribe to our Newsletter!"optionalHeading text displayed on the inline form.
textstring"We promise not to spam you."optionalSub-heading / description text on the form.
redirect-urlstringnulloptionalURL to redirect after subscribing.
newsletter-idsstringnulloptionalComma-separated newsletter IDs to subscribe to.
skip-verifybooleanfalseoptionalSkip the email confirmation step.
<mediaos-newsletter-manage>
Manage subscriptions

Description

Allows a logged-in user to view and manage their newsletter subscription preferences — subscribing or unsubscribing from individual newsletters.

Usage

HTML
<mediaos-newsletter-manage></mediaos-newsletter-manage>

No configurable props. Subscription state is loaded from the logged-in user's profile.

<mediaos-newsletter-archive>
Past newsletter archive

Description

Displays a browsable archive of past newsletter editions, grouped by year. Supports viewing individual newsletter HTML directly in the component.

Usage

HTML
<mediaos-newsletter-archive></mediaos-newsletter-archive> <!-- Filter to a specific newsletter --> <mediaos-newsletter-archive id="3" start-year="2022"></mediaos-newsletter-archive>

Props

PropTypeDefaultRequiredDescription
idnumbernulloptionalFilter to a specific newsletter by ID.
start-yearnumbercurrent yearoptionalThe earliest year to display in the archive.

News Bites

<mediaos-news-bite-display>
Short-form news feed

Description

Displays a multi-column feed of short-form "news bite" posts. Supports category filtering, image display, and opening articles in a new tab.

Usage

HTML
<mediaos-news-bite-display columns="3" items-per-column="4"></mediaos-news-bite-display>

Props

PropTypeDefaultRequiredDescription
columnsnumber1optionalNumber of columns to display.
items-per-columnnumber5optionalNumber of news bites per column.
category-idsarray[]optionalArray of category IDs to filter bites.
show-imagesbooleantrueoptionalDisplay thumbnail images with each bite.
show-datebooleantrueoptionalShow the published date on each bite.
business-profile-idstringnulloptionalFilter bites by a specific business directory profile.
open-in-new-tabbooleanfalseoptionalOpen article links in a new browser tab.

Paywall

Control content access with metered paywalls, landing pages, and page-view counters.

<mediaos-landing-page>
Paywall / landing page

Description

Renders a MediaOS-configured paywall landing page. Supports template variables for dynamic page view counts ({{pageViewsLeft}}, {{totalPageViews}}, {{pageViewsUsed}}).

Usage

HTML
<mediaos-landing-page id="26"></mediaos-landing-page>

Props

PropTypeDefaultRequiredDescription
idnumberrequiredThe MediaOS landing page ID to display.
page-views-leftnumbernulloptionalRemaining free page views — injected into template variables.
total-page-viewsnumbernulloptionalTotal allowed free page views — injected into template variables.
<mediaos-page-views-left>
Free page view counter (nav bar)

Description

Shows the current user's remaining free page views in a compact nav-bar-friendly widget. Designed to be placed inline in your site header.

Usage

HTML
<mediaos-page-views-left height="50"></mediaos-page-views-left>

Props

PropTypeDefaultRequiredDescription
heightnumber40optionalHeight of the widget in pixels (matches nav bar height).

Perks

<mediaos-perks>
Member perks listing

Description

Displays the member perks catalog — discounts and benefits provided by local businesses to your site's members.

Usage

HTML
<mediaos-perks></mediaos-perks>

No configurable props. Perks are loaded from the MediaOS account configuration.

Polls

<mediaos-poll>
Audience poll

Description

Embeds a single-question poll with real-time results. Requires the user to be logged in to vote. Supports post-vote redirect or a landing page overlay.

Usage

HTML
<mediaos-poll id="5" title="What's your favorite feature?" redirect-url="https://example.com/results"> </mediaos-poll>

Props

PropTypeDefaultRequiredDescription
idnumber""optionalThe MediaOS poll ID. If omitted, options must be provided directly.
titlestring""optionalPoll question / heading text.
sub-titlestring""optionalSub-heading text shown below the question.
redirect-urlstring""optionalRedirect the user here after voting.
display-landing-page-idnumber""optionalShow a MediaOS landing page after voting instead of redirecting.
optionsstring""optionalURL-encoded JSON array of poll option objects (used when not loading from a saved poll ID).

Revenue Tools

Support

<mediaos-ticket-chat>
Support ticket chat widget

Description

A collapsible chat widget tied to a MediaOS support ticket. Allows users to send messages and receive replies in real time. Polls for new messages automatically.

Usage

HTML
<mediaos-ticket-chat id="123"></mediaos-ticket-chat>

Props

PropTypeDefaultRequiredDescription
idstringrequiredThe support ticket ID to load the chat for.

User / Authentication

Login, registration, SSO, and user menu components for adding authentication to any page.

<mediaos-user-menu>
User nav bar widget

Description

A compact login/profile dropdown for the navigation bar. Shows a user avatar and name when logged in, or a sign-in prompt when logged out.

Usage

HTML
<!-- In your navigation bar --> <mediaos-user-menu height="50" icon-height="30"></mediaos-user-menu>

Props

PropTypeDefaultRequiredDescription
heightstring"30"optionalHeight of the widget in pixels — should match your nav bar height.
icon-heightstring"17"optionalHeight of the user avatar icon in pixels.
font-sizestring"18"optionalFont size (in px) for the displayed user name.
font-colorstring"#000000"optionalCSS color for the user name text.
register-headerstring"Not a member?"optionalHeading shown in the register panel.
register-textstring"Sign up for…"optionalBody text shown in the register panel.
register-button-textstring"Join now, it's FREE!"optionalLabel for the register call-to-action button.
login-headerstring"Welcome Back!"optionalHeading shown on the login panel.
login-textstring"Sign in to your account…"optionalBody text shown on the login panel.
login-button-textstring"Sign In"optionalLabel for the sign-in button.
<mediaos-login-form>
Standalone login form

Description

A full login form with email/password fields, forgot-password flow, and SSO options. Can be embedded on a dedicated login page.

Usage

HTML
<mediaos-login-form></mediaos-login-form> <!-- Reload page after login --> <mediaos-login-form reload="true"></mediaos-login-form>

Props

PropTypeDefaultRequiredDescription
reloadbooleanfalseoptionalIf true, reloads the current page after a successful login.
<mediaos-register-form>
New user registration form

Description

A full registration form that creates a new MediaOS contact. Includes name, email, password fields, and SSO options. Automatically subscribes the user to the configured newsletter if set in account settings.

Usage

HTML
<mediaos-register-form></mediaos-register-form>

Props

PropTypeDefaultRequiredDescription
labelstring"Register"optionalLabel for the submit button.
<mediaos-sso>
Single Sign-On buttons

Description

Renders configured SSO provider buttons (Google, Microsoft, LinkedIn) based on your MediaOS account settings. Only shows buttons for providers that have been configured. To log in a user from your own system, use window.MediaOS.UserSsoJwt(jwt).

Usage

HTML
<mediaos-sso></mediaos-sso> <!-- Force 2-column layout --> <mediaos-sso columns="2"></mediaos-sso>

Props

PropTypeDefaultRequiredDescription
columnsstringnulloptionalMaximum number of SSO button columns. Auto-adjusts to fit available providers.

Programmatic SSO

JavaScript – log in a user via JWT
// Call after the MediaOS script has loaded window.MediaOS.UserSsoJwt('eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...');