=== Redefined Zero Video Gallery ===
Contributors: rhfarukh, freemius
Tags: youtube, vimeo, gallery, video, responsive-video
Requires at least: 5.0
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 2.0.0
License: GPL2
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Custom post type for YouTube, Vimeo, and more. Video galleries, single video pages, responsive grid, and shortcodes with modal or link layouts.

== Description ==

**Redefined Zero Video Gallery** (Orvian Soft) adds a videos custom post type, saved gallery shortcodes, single video pages, and responsive grid layouts with modal or direct link playback.

**Here are the Demos:**

[View live Video Gallery demos](https://demos.orviansoft.com/video-gallery-and-album-demos/)

**Support:**

[Get support at Orvian Soft](https://orviansoft.com/get-support/)

**Redefined Zero Video Gallery** registers:

* **Video Gallery** admin menu — custom post type `rzvg_video`
* **Video URL** field on each item — easily embed **YouTube** or **Vimeo** videos (with title, editor, excerpt, and featured image)
* **Video Categories** taxonomy to organize your videos into categories
* **Single template** — dedicated single video page template (`templates/single-rzvg_video.php`)
* **All galleries & Add gallery** — create saved galleries with custom Data and Styles settings
* **Default Gallery Settings** — site-wide Data and Styles defaults for your galleries
* **Shortcode** **`[rzvg_video_gallery id="N"]`** — embed video galleries anywhere with responsive grid, modal popup, or link layouts (omit `id` for gallery 1)

Permalinks: after activation visit **Settings → Permalinks** and click **Save** once if URLs 404.

= Plans =

The plugin is free to install and fully functional. Optional paid plans and add-ons provide additional advanced options and priority support.

**Free**

* Unlimited videos, categories, and saved galleries
* `[rzvg_video_gallery]` shortcode and single video pages
* **Default Gallery Settings** — configure grid batch size, columns per row (desktop, tablet, mobile), pagination, load more, titles, and click behavior
* Per-gallery **Data Settings** and **Styles** customization
* Use post featured image as video cover

**Professional**

* Advanced styling presets, additional card designs, and priority technical support.

**Ultimate**

* Advanced customization options, premium design presets, and priority technical support.

Upgrade inside the plugin via the Freemius account screen, or visit Orvian Soft.

== External services ==

This plugin can load videos and thumbnails from third-party video platforms, and uses Freemius for optional paid plans, licensing, and updates. Below is what connects from your WordPress site, what is sent, and when.

= Video embeds (visitor's browser) =

When a gallery or single video page displays a video, the visitor's browser may load embed players and assets from the host you chose for that video (YouTube, Vimeo, Youku, Dailymotion, Bilibili, or a self-hosted file from your site). The plugin does not upload your WordPress content to those hosts; it outputs embed markup or links using the URL you saved on each video.

* **YouTube** — Used for playback and optional grid thumbnails (`img.youtube.com`). oEmbed/embed data is requested through WordPress when resolving a YouTube URL. Sent: the video URL (and standard HTTP request metadata). When: saving or displaying a YouTube video, or when a thumbnail is built from oEmbed.
  Terms: https://www.youtube.com/t/terms — Privacy: https://policies.google.com/privacy

* **Vimeo** — Used for playback and optional poster images via WordPress oEmbed. Sent: the video URL. When: displaying a Vimeo video or resolving its thumbnail.
  Terms: https://vimeo.com/terms — Privacy: https://vimeo.com/privacy

* **Dailymotion** — Used for playback (embed iframe) and grid posters (`dailymotion.com` thumbnail URLs). Sent: the video URL or ID derived from it. When: displaying a Dailymotion video or its cover image.
  Terms: https://legal.dailymotion.com/en/terms-of-use/ — Privacy: https://legal.dailymotion.com/en/privacy-policy/

* **Youku** — Used for playback (`player.youku.com` embed). Sent: the video URL or ID in embed parameters. When: a visitor views a Youku video on your site.
  Terms: https://www.youku.com/pub/service/home — Privacy: https://ac.youku.com/wow/ykpage/act/flsm

* **Bilibili** — Used for playback (`player.bilibili.com` embed). Sent: video reference (BV ID or av ID) in embed parameters. When: a visitor views a Bilibili video on your site.
  Terms: https://www.bilibili.com/protocal/licence.html — Privacy: https://www.bilibili.com/blackboard/privacy-pc.html

= Server-side requests (WordPress site → external APIs) =

These calls are made from your server to fetch metadata or poster images. Results are cached in WordPress transients or post meta where possible.

* **Bilibili public API** (`https://api.bilibili.com/x/web-interface/view`) — Used to obtain the official cover image URL for a Bilibili video when you save or display a Bilibili item. Sent: the video identifier (`bvid` or `aid` parsed from the URL you entered). When: syncing or showing a Bilibili poster, or when the poster cache is empty.
  Terms: https://www.bilibili.com/protocal/licence.html — Privacy: https://www.bilibili.com/blackboard/privacy-pc.html

* **Bilibili CDN** (image host returned by the API, e.g. `hdslb.com`) — Used to download the poster image bytes so they can be shown in the grid (some CDNs block direct browser hotlinking). Sent: the poster image URL and a `Referer: https://www.bilibili.com/` header. When: generating or refreshing a Bilibili cover, including the optional `admin-ajax.php?action=rzvg_bilibili_poster` image proxy for front-end visitors.
  Terms: https://www.bilibili.com/protocal/licence.html — Privacy: https://www.bilibili.com/blackboard/privacy-pc.html

* **Youku UPS API** (`https://ups.youku.com/ups/get.json`) — Used to resolve the official poster URL for a Youku video ID. Sent: the Youku video ID and a client token (`utid`) obtained from `https://log.mmstat.com/eg.js`, plus a `Referer: https://v.youku.com/` header. When: building or refreshing a Youku grid thumbnail (cached per video ID).
  Terms: https://www.youku.com/pub/service/home — Privacy: https://ac.youku.com/wow/ykpage/act/flsm

* **log.mmstat.com (Youku / Alibaba Token Service)** (`https://log.mmstat.com/eg.js`) — Used to obtain an anonymous client token (`utid`) required for authenticating server requests to the Youku UPS poster API. Sent: standard HTTP request headers to retrieve the token. When: resolving or refreshing a Youku video poster image.
  Terms: https://www.youku.com/pub/service/home — Privacy: https://ac.youku.com/wow/ykpage/act/flsm

* **WordPress oEmbed** — For supported URLs, WordPress may contact the provider's oEmbed endpoint to fetch embed HTML and thumbnail URLs (notably Vimeo; other hosts may apply). Sent: the video URL you stored on the video post. When: rendering embeds or resolving oEmbed thumbnails.

No server-side API call is required for **self-hosted** videos (Media Library or direct MP4 URL); those files are served from your own site.

= Freemius (optional licensing & updates) =

The plugin includes the Freemius SDK for free/pro/ultimate plan activation, plugin updates, and checkout flows. If you opt in or purchase a plan, Freemius may process account, license, and site information according to its policies. Sent: depends on your actions in the Freemius opt-in, activation, or checkout UI (e.g. email, site URL, license key). When: installing/updating the plugin, activating a license, or opening Freemius admin screens—not on ordinary public gallery page views unless you use those features.

Service: Freemius — Terms: https://freemius.com/terms/ — Privacy: https://freemius.com/privacy/

= Orvian Soft (optional links only) =

Upgrade and support links in the admin may point to `https://orviansoft.com/`. Those pages open only when you click them; the plugin does not automatically transmit site data to Orvian Soft for gallery playback.

== Installation ==

1. Upload the `rzvg-video-gallery` folder to the `/wp-content/plugins/` directory.
2. Activate **Redefined Zero Video Gallery** under **Plugins**.
3. Visit **Settings → Permalinks** and click **Save** once (rewrites for video URLs).
4. Add items under **Video Gallery → Add New**, paste a **YouTube** or **Vimeo** URL in the video URL field, set title/image/excerpt as needed.
5. Create a gallery under **Video Gallery → All galleries**, then embed **`[rzvg_video_gallery id="N"]`** on a page.
6. Create a gallery under **Video Gallery → All galleries**, configure data and styles as desired, then embed **`[rzvg_video_gallery id="N"]`** on a page.

== Frequently Asked Questions ==

= What is included in the free version? =

Unlimited videos, categories, galleries, shortcodes, single video pages, responsive column settings, pagination, load more, and gallery styling controls.

= What do paid plans add? =

Paid plans add advanced styling options, priority support, and premium design presets.

= How do I get support? =

[Get support at Orvian Soft](https://orviansoft.com/get-support/)

Open our support page and use the form to contact us.

== Changelog ==

= 2.0.0 =
* Initial Release of Redefined Zero Video Gallery.
