Embed SatPointer with dynamic language selection

TotalSat’s SatPointer gives Australian installers and satellite enthusiasts a free, browser-based way to work out where to point a dish. It combines Google Maps, orbital data and a selected installation site to calculate pointing details for reception, uplink, downlink and mobile satellite links. Beam coverage and estimated dish-size information also help users decide whether a satellite is a practical choice.

Embedding the tool on a company website, trade blog or community forum keeps that guidance available without sending visitors elsewhere. Dynamic language selection adds a useful refinement: each widget can follow the visitor’s browser language, respect a manual choice and fall back cleanly to English. This is particularly helpful for Australian businesses serving multilingual customers and technicians working across several sites.

Prepare a language-aware embed

Start with the official SatPointer embed source, where you can generate a widget for a location and satellite use case. Copy the complete snippet rather than typing an iframe address from memory. It should already contain the location, orbital, coverage and presentation values that SatPointer needs for a useful pointing result.

Treat the widget language as an interface setting, separate from the language of the surrounding page. A Spanish-language page can contain an English widget, yet it should default to Spanish when that option is available. Keep installation coordinates and satellite parameters intact; changing the language must never alter the calculated azimuth, elevation, skew or dish estimate.

Language behaviour options

  • Browser detection uses the first supported entry from navigator.languages.
  • A page override accepts ?lang=es, allowing a campaign or support page to force one language.
  • A manual control beside the widget lets visitors change language without reloading the host page.
  • Regional fallback maps en-AU, en-NZ and similar values to a supported base language.
  • A safe default uses English when the requested language is missing or unsupported.

Choose these behaviours before adding code because the manual option needs a visible control and the browser option needs a defined fallback. Decide whether a URL choice should outrank the visitor’s saved browser preference; for most sites, an explicit ?lang= value should do so because it gives campaign links predictable behaviour.

Generate and place the widget code

Install the generated code in the template or custom-code area offered by your CMS. Wix publishers can follow the Wix embedding walkthrough for a page-by-page method, while WordPress, Squarespace, Shopify and custom sites can use the same iframe in a normal content block. Position it near installation instructions rather than hiding it behind a form.

Give the iframe a unique ID and a meaningful title, then paste the exact URL supplied by SatPointer. A practical starting point looks like this:

<iframe
  id="satpointer-widget"
  title="SatPointer dish alignment tool"
  src="PASTE_THE_GENERATED_IFRAME_URL"
  width="100%"
  height="620"
  loading="lazy">
</iframe>

Replace the placeholder, but retain every query parameter in the generated address. The script in the next section changes only the language. Check the width and height on a phone, provide enough space for the map and results, and avoid a fixed width that causes horizontal scrolling. Since the iframe loads SatPointer and mapping resources from external providers, check your privacy and cookie notices before publication.

Detect the visitor’s language

The browser exposes preferred languages through navigator.languages, with navigator.language as a fallback. A URL parameter should take priority because a link whose query ends in ?lang=es needs to behave the same way for every recipient. The following example checks an explicit request first, then browser preferences, and preserves all existing iframe parameters:

<script>
(() => {
  const frame = document.querySelector("#satpointer-widget");
  if (!frame) return;

  const supported = new Set(["en", "es", "fr", "de", "pt", "it"]);
  const requested = new URLSearchParams(location.search).get("lang");
  const browserLanguages = navigator.languages && navigator.languages.length
    ? navigator.languages
    : [navigator.language || "en-AU"];
  const preferences = [requested, ...browserLanguages].filter(Boolean);

  const language = preferences
    .map(value => value.toLowerCase().split("-")[0])
    .find(value => supported.has(value)) || "en";

  const frameUrl = new URL(frame.src);
  frameUrl.searchParams.set("lang", language);
  frame.src = frameUrl.toString();
  frame.dataset.language = language;
})();
</script>

Replace the sample supported values with the exact language codes offered by the current SatPointer generator. If your snippet uses a query key other than lang, use that key instead. The data-language attribute gives testers a quick way to confirm the chosen value, while reloading the frame lets the embedded application render the new locale.

For a complete experience, place a visible language selector beside the widget and have it update the same iframe URL. Provide English as the no-JavaScript fallback, and make the control announce changes to assistive technology. Teams maintaining a larger website or custom CMS can ask the QLoudPress development team to review the implementation, especially when several widgets share one language preference.

Localise the Australian experience

Language choice is only one layer of localisation. For an Australian default, a Sydney coordinate such as latitude -33.8688 and longitude 151.2093 gives SatPointer a sensible starting point, while Melbourne, Brisbane, Adelaide and Perth can be offered as presets. Avoid requesting a precise device location without permission; let the visitor enter the site address or choose a city when consent is unavailable.

Test several satellite use cases rather than relying on one familiar satellite. Australian households may use pay television such as Foxtel through satellite, while mining operations in remote Western Australia and Queensland, offshore vessels and rural broadband providers use satellite links for different purposes. The Anik F3 setup guide demonstrates how orbital details can be turned into a pointing and dish-size workflow, and the same process helps test reception, uplink and downlink pages.

Australian publishing checks

  • Label the host page en-AU when its copy is Australian English.
  • Use dd/mm/yyyy dates, local time-zone names and metric measurements.
  • Enter coordinates as decimal degrees, including a minus sign for southern latitudes.
  • Offer major city presets without overriding a visitor’s manually chosen location.
  • Check links to Australian satellite reception, marine and remote mining services.

The widget calculates a pointing direction from the chosen location and orbital data. It cannot assess every obstruction, mast offset, cable run, wind load, grounding requirement or local installation rule. Keep those safety and compliance points in the surrounding article, and advise customers to use a qualified installer where the installation is complex or access is hazardous.

Publish, test, and promote the widget

Before launch, test every language route in current versions of Chrome, Safari, Firefox and Edge, on both desktop and mobile. Open ?lang=es, change the browser’s preferred language and clear cached versions before checking the result. Confirm that the map, buttons and results remain usable, the iframe has a meaningful accessible title, focus can move into the tool, and no text is clipped at narrow widths.

After publication, link to the widget from installation guides, support pages and location-specific articles so visitors encounter it at the point of need. A separate editorial area can carry related guides for the wider audience; for example, an iPhone message scheduling guide can help readers organise a reminder for a planned installation visit without distracting from the satellite tool itself.

Open the SatPointer embed source, generate the widget for your first Australian installation location, choose the language behaviour that matches your audience and test it on a phone. Publish the working embed today, then use the browser and URL overrides to give every visitor a clear path from satellite selection to dish alignment.