=== PNS Page Loader ===
Contributors: partho018
Tags: page loader, preloader, loading animation, page transition, website preloader
Requires at least: 5.8
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

A premium, high-performance, full-screen page loader animation plugin for WordPress frontend with customizable presets and styling controls.

== Description ==

**PNS Page Loader** is a lightweight, high-performance page transition loader plugin for WordPress. It displays a seamless, aesthetically pleasing loading animation while your website assets, styles, and scripts load in the background.

With extensive customization options, intuitive dashboard controls, and zero third-party framework overhead, PNS Page Loader delivers an exceptional user experience without slowing down your website.

### Key Features:
* **Multiple Animation Types**: Classic CSS Spinners (Ring, Bouncing Dots, Pulse, Bars, Double Bounce), Custom SVG Files, Logo/Brand Image, and Text Only.
* **Modern Gradients & Dual Colors**: Switch seamlessly from solid backgrounds to vibrant multi-directional linear gradients with custom color stops and angles.
* **Glassmorphism & Backdrop Blur**: Frosted-glass backdrop filter softly blurs underlying website content with configurable blur strength.
* **Complete Visual Customizer**: Custom overlay background colors, opacity levels, animation accent colors, subtitle typography, and dimensions.
* **WordPress Media Library Integration**: Easily upload your company logo or custom SVG graphic directly through the native media manager.
* **Smooth Exit Animations**: Choose between Fade Out, Slide Upward, or Scale & Fade transitions.
* **Safety Fallback Timeout**: Built-in timeout timer ensures visitors are never stuck or locked out if external network resources stall.
* **Display Targeting**: Activate the loader across all pages, homepage only, or restrict to specific pages and posts.
* **Smart Performance Limits**: Option to disable the preloader on mobile devices and restrict frequency (every page load, once per session, or once per day).
* **100% Translation Ready**: Includes full internationalization support and translation template (.pot).

== Installation ==

### Automatic Installation (Recommended)
1. Log in to your WordPress administrator dashboard.
2. Navigate to **Plugins** -> **Add New**.
3. Search for `PNS Page Loader`.
4. Click **Install Now**, then click **Activate**.
5. Go to **Settings** -> **PNS Page Loader** to configure your animation settings.

### Manual Installation
1. Download the plugin ZIP archive.
2. Upload the `pns-page-loader` folder to your `/wp-content/plugins/` directory.
3. Activate the plugin via the **Plugins** menu in WordPress.
4. Navigate to **Settings** -> **PNS Page Loader** to customize options.

== Frequently Asked Questions ==

= Can I disable the page loader on mobile devices? =
Yes. In the **Settings** -> **PNS Page Loader** panel, navigate to the **Behavior & Visibility** tab and toggle the **Disable on Mobile Devices** switch.

= What happens if a resource on my page takes too long to load? =
PNS Page Loader includes an automatic Fallback Timeout limit (customizable in seconds). If the page does not complete loading within this time, the loader fades out automatically to guarantee your visitors always have access.

= Can I display the loader only once per visitor session? =
Yes. Under the **Behavior & Visibility** tab, set **Loading Frequency Limit** to **Once Per Session** (uses browser sessionStorage) or **Once Per Day** (uses cookie).

= Can I use my own company logo as the loader? =
Yes. Select **Logo / Custom Image** under **Loader Animation Type**, then upload your logo directly from your media library and choose an optional spinner ring or background shape.

== Screenshots ==

1. General Settings: Configure preloader status, animation types, presets, logos, and custom messages.
2. Styling & Colors: Fine-tune background colors, overlay opacity, and loader accent colors.
3. Behavior & Visibility: Control exit transitions, fallback safety timeouts, frequency limits, and target pages.

== Changelog ==

= 1.0.0 =
* Initial release on WordPress.org.
* Added 5 CSS spinner presets: Ring, Dots, Pulse, Bars, and Double Bounce.
* Added SVG animation media support via WordPress Media Library.
* Added Logo image loader with spinner wrapper options.
* Added exit animations: Fade, Slide Up, and Zoom Out.
* Added visibility rules: All pages, Homepage only, and Specific posts/pages.
* Added frequency limiting: Always, Once per session, and Once per day.
* Enqueued dynamic inline styles using WordPress core wp_add_inline_style.
* Fully prefixed all functions, classes, options, transients, and constants.

== Upgrade Notice ==

= 1.0.0 =
Initial release of PNS Page Loader.
