WordPress plugin: a live camera with one shortcode
You don't need to write code to put a camera on a WordPress site: install the plugin and paste one shortcode into any page, post or widget.
What you need
- WordPress 5.8 or newer and PHP 7.4 or newer.
- An active camera in your VIDEOCAMERA LIVE dashboard — its connection test must have passed.
- The plugin's zip archive,
videocamera-live— write to info@videocamera.ge or call us if you don't have it yet.
Installation
- In the WordPress admin go to Plugins → Add New → Upload Plugin, choose the zip file and click Install Now. Alternatively, upload the
videocamera-livefolder to/wp-content/plugins/. - Activate the plugin in the Plugins menu.
- In our dashboard, open the camera's embed settings and copy its public ID — the part after
/embed/in the embed code. - Add the shortcode to a page: in the block editor use a Shortcode block, in the classic editor type it straight into the text, in widget areas use a Shortcode block. Elementor and other page builders have a Shortcode element too.
The shortcode and its attributes
The minimal version needs one attribute — the camera's public ID:
[videocamera_live id="PUBLIC_ID"]
[videocamera_live id="PUBLIC_ID" width="800px" aspect_ratio="4/3" title="Gudauri, ski slope live"]
[videocamera_live id="PUBLIC_ID" key="EMBED_KEY"]
| Attribute | Default | What it does |
|---|---|---|
id | — (required) | The camera's public ID from the dashboard: Latin letters, digits, - and _. |
width | 100% | Player width. Allowed units: px, %, em, rem, vw, vh — e.g. 800px. |
aspect_ratio | 16/9 | The proportions; height is calculated automatically. For a 4:3 camera use 4/3. |
title | empty | A description of the frame for screen readers, e.g. "Gudauri, ski slope live". |
key | empty | The embed key — only for a camera whose embed is key-protected in the dashboard. |
If width or aspect_ratio is malformed, the plugin falls back to the default. If id is missing or invalid, visitors see nothing, while a logged-in editor sees an error message on the page — so you notice the problem, not your visitors.
The settings screen
Settings → VIDEOCAMERA LIVE has a single field: Base URL, the platform's address. It defaults to https://live.videocamera.ge, and normally you never touch it. It only changes if you run the platform on your own separate server; the field accepts only an https:// address.
What the plugin never does
- It never stores or sends your camera's RTSP username, password or IP address. WordPress only holds a public ID and display options.
- It never stores or caches viewing tokens — our platform issues them fresh on every load. So caching plugins can't break the live stream.
- It adds no JavaScript or CSS of its own to your site and doesn't route video through your hosting — your site doesn't slow down. The player loads in an iframe, lazily (
loading="lazy"). - It validates and escapes every attribute before output — odd text typed into a shortcode never lands in your HTML raw.
You can also skip the plugin and paste the plain iframe code into a "Custom HTML" block — see Embedding on a website. The plugin is simply more convenient and also works for editors whom WordPress doesn't allow to insert iframes.
Does the plugin need my camera's password?
No, never. WordPress only gets the camera's public ID (and, for a key-protected embed, the embed key). Camera credentials live only in our dashboard, encrypted.
I added the shortcode but nothing shows. Why?
Log in and open the page — as an editor you'll see the error text. Most often the id was copied wrong. If the player appears but says viewing isn't allowed on this site, add your domain to the allowed domains.
Can I put several cameras on one page?
Yes — one shortcode per camera, each with its own id. Players load lazily, so the page stays light.
Does it work in Elementor or other page builders?
Yes, if the builder has a Shortcode element — Elementor does. Paste the same [videocamera_live id="PUBLIC_ID"] there.