Zeal Ad Manager Documentation

Welcome to Zeal Ad Manager! Thank you for purchasing our commercial-grade advertising network plugin for WordPress. This comprehensive guide will walk you through the installation, configuration, and management of your ad network.

Zeal Ad Manager transforms your WordPress site into a complete, self-service advertising network. Go beyond simple, fixed-rate ad systems with an intelligent, performance-based dynamic pricing engine that creates a fair and competitive ecosystem for both advertisers and publishers.

Important: Please read this documentation carefully before setting up the plugin. It covers everything from installation to advanced configuration, including the dynamic pricing engine, ad formats, and fraud detection system.

What's Included

Key Features at a Glance

Server Requirements

Before installing Zeal Ad Manager, ensure your server meets the following minimum requirements:

Requirement Minimum Recommended
WordPress Version 6.0+ 6.5+
PHP Version 7.3+ 8.0+
MySQL Version 5.7+ 8.0+
WooCommerce 7.0+ (required for payments) 8.0+
PHP Memory Limit 128MB 256MB

Required PHP Extensions

Required Plugins

Tip: Most modern WordPress hosting providers meet all of these requirements out of the box. If you're unsure, check the Tools → Site Health page in your WordPress dashboard.

Optional External Services

Service Purpose Required?
Google Gemini AI Auto-generate keywords for ads and publisher sites; generate AI ad copy Optional
RapidAPI (App Store API) Fetch app metadata for the App Install ad format Optional (only for App Install ads)

Installation & Setup

Follow these steps carefully to install and configure Zeal Ad Manager on your WordPress site.

1. Upload & Activate the Plugin

  1. Download the zeal-ad-manager.zip file from your purchase
  2. In your WordPress dashboard, go to Plugins → Add New → Upload Plugin
  3. Click Choose File and select the zip file
  4. Click Install Now, then click Activate Plugin

Alternative: You can also upload the unzipped zeal-ad-manager folder directly to /wp-content/plugins/ via FTP/SFTP, then activate it from the Plugins page.

2. Auto-Created Pages

Upon activation, the plugin automatically creates three essential pages with pre-configured shortcodes:

Page Shortcode Purpose
Advertiser Dashboard [zam_advertiser_dashboard] Self-service campaign management for advertisers
Publisher Dashboard [zam_publisher_dashboard] Site management and earnings tracking for publishers
Register [zam_register_form] Registration form with role selection (Advertiser or Publisher)

Note: You can find these pages in Pages → All Pages and add them to your navigation menu. The pages are only created on the first activation — re-activating the plugin will not duplicate them.

3. WooCommerce Integration Setup

Zeal Ad Manager uses WooCommerce to process advertiser payments. Follow these steps to set it up:

  1. Make sure WooCommerce is installed and activated
  2. Go to Products → Add New and create a new Simple product
  3. Name it something like "Ad Campaign Credit" or "Advertising Funds"
  4. Set the price to any value (the plugin will override the price dynamically based on the advertiser's chosen budget)
  5. Publish the product
  6. Note the Product ID (visible in the URL when editing: post=123)
  7. Go to Zeal Ad Manager → Settings → General and enter this Product ID in the Ad Credit Product ID field
  8. Save your settings

Important: The WooCommerce product must be published and the correct Product ID entered in settings. Without this, advertisers will not be able to fund their campaigns.

Done! Your Zeal Ad Manager is now installed. The next step is to configure the admin settings to customize pricing, ad formats, and email notifications.

Admin Panel Configuration

Access the Zeal Ad Manager admin panel from the WordPress sidebar: Zeal Ad Manager. The admin area includes a dashboard overview, ad/site management, reports, and a comprehensive settings page with four tabs.

Dashboard Overview

The admin dashboard provides an at-a-glance view of your ad network's performance:

The dashboard also includes quick links to review queues and access reports.

Admin Reports

Navigate to Zeal Ad Manager → Reports for detailed analytics:

General Settings

Navigate to Zeal Ad Manager → Settings → General

Publisher & General Settings

Setting Description
Currency Symbol The currency symbol displayed throughout the plugin (e.g., $, €, £). Default: $
Publisher Revenue Share (%) Percentage of ad revenue paid to publishers. (e.g., 70 means the publisher gets 70%, you keep 30%)
Minimum Withdrawal Amount The minimum balance a publisher must have before they can request a withdrawal
Available Withdrawal Methods One method per line. Shown as options to publishers (e.g., PayPal, Bank Transfer, Payoneer)
Sponsored Ad Tooltip Content Rich text content that appears when users click the sponsored icon (⊕) on ads
Hide Dashboard Page Titles Hides the main page titles on frontend dashboards for a cleaner appearance

WooCommerce Integration

Setting Description
Ad Credit Product ID The WooCommerce Product ID for the ad credit product (see Installation Step 3)

Ad Network Settings

Navigate to Zeal Ad Manager → Settings → Ad Network

Ad Serving & Automation

Setting Description
Minimum Advertiser Budget Minimum amount an advertiser can spend on a campaign. Default: 10
Available HTML Ad Slots Maximum number of HTML template ads active on the network. Set to 0 to disable. Default: 5
Enabled Ad Templates Select which ad formats are available to advertisers (Spotlight, Story, Banner, App Install, HTML, AI Dynamic, Animated)
Base CPC Rate Base cost per click before multipliers are applied (e.g., 0.25)
Base CPM Rate Base cost per 1,000 impressions before multipliers (e.g., 5.00)
Country Tier Multipliers Define geographic pricing tiers. Format: US,CA,UK:1.5 (one tier per line). Unlisted countries default to 1.0
Exclude Countries from Targeting Comma-separated country codes to remove from advertiser targeting options (e.g., KP,IR,SY)
Enable Cross-Origin Ad Serving Required for ads to work on external publisher sites. Enables CORS headers on the API
Enable Domain Referer Check Recommended. Verifies ad requests come from approved publisher domains only
Serve Ads on Unapproved Sites Not Recommended. Bypasses the approval system — ads serve on pending sites too
Auto-Approve New Ads Skip manual admin review — ads go live immediately after payment
Auto-Verify New Sites Automatically verify and approve publisher sites when the verification meta tag is detected

AI Integration (Google Gemini)

Navigate to Zeal Ad Manager → Settings → Ad Network (AI Integration section)

The plugin uses Google's Gemini AI to automatically generate relevant keywords for ads and publisher sites, and to create AI-powered dynamic ad copy.

Setup

  1. Go to Google AI Studio and create an API key
  2. Enter the API key in the Gemini API Key field
  3. Save settings

What AI Does

Privacy: Only advertiser landing page URLs and publisher site URLs are sent to Google's Gemini API. No visitor data is ever shared. This feature is entirely opt-in and requires manual API key configuration.

App Data Integration (RapidAPI)

For the App Install ad format, the plugin can fetch app metadata (icons, ratings, descriptions) from Google Play and Apple App Store.

  1. Create an account at RapidAPI
  2. Subscribe to the App Store & Google Play API
  3. Enter your X-RapidAPI-Key in the settings

GeoIP Country Targeting

The plugin includes a bundled MaxMind GeoLite2 Country database that runs entirely locally — no external API calls are made. The settings page shows the database status and version information.

Email Settings

Navigate to Zeal Ad Manager → Settings → Emails

Configure the sender information and customize all notification emails. Each email can be individually enabled/disabled and has customizable subject, heading, and body fields with placeholder support.

Sender Options

Setting Description
From Name The name emails are sent from. Defaults to your site name
From Email The email address emails are sent from. Defaults to admin email

Email Notifications (8 Templates)

Email Recipient Trigger Placeholders
New Ad Submission Admin Advertiser submits a new campaign for review {site_title}, {ad_title}, {user_name}, {review_link}
Ad Approved Advertiser Admin approves a campaign {user_name}, {ad_title}, {dashboard_link}
Ad Rejected Advertiser Admin rejects a campaign {user_name}, {ad_title}, {dashboard_link}
Budget Low Advertiser Campaign budget is running low {user_name}, {ad_title}, {dashboard_link}
Site Approved Publisher Admin approves a publisher site {user_name}, {site_url}, {dashboard_link}
Withdrawal Processed Publisher Admin processes a withdrawal request {user_name}, {amount}, {dashboard_link}
Fill Rate Reduced Publisher Fraud detection automatically reduces ad fill rate {user_name}, {site_url}, {new_fill_rate}, {dashboard_link}
Fill Rate Restored Publisher Activity returns to normal, fill rate auto-restored {user_name}, {site_url}, {dashboard_link}

Tools

Navigate to Zeal Ad Manager → Settings → Tools

Warning: The "Delete Data on Uninstall" option is destructive and irreversible. Only enable this if you are certain you want to remove all ad network data when uninstalling the plugin.

Ad Formats

Zeal Ad Manager supports 7 standard ad formats, each designed for different advertising objectives. Admins can enable or disable any format from the Ad Network Settings.

Spotlight Ad (300×250)

The classic medium rectangle ad. Ideal for sidebar placements and in-content advertising.

Banner Ad (728×90)

The traditional leaderboard banner for header and footer placements.

Story Ad (Vertical)

A vertical, full-height ad format inspired by social media stories.

App Install Ad

A specialized format for promoting mobile applications. When an advertiser enters a Google Play or Apple App Store URL, the plugin automatically fetches the app's icon, name, rating, and description.

Animated Ad Builder

A powerful in-dashboard studio that lets advertisers create engaging animated HTML5 and video ads without any coding knowledge. The builder features live preview and 18+ professional animation templates.

Available Animation Templates

Template Description
Classic SlideClean sliding transitions with professional motion design
Minimal StyleElegant minimalist animations with subtle effects
E-Commerce AdProduct-focused with pricing callouts and buy-now CTAs
Instagram StyleSocial media-inspired gradient and story-style animations
Twitter / X StyleClean, card-based animations mimicking social feeds
TikTok StyleVertical, bold, high-energy animations for youth audiences
Google StyleMaterial Design-inspired clean animations
Luxe WatchPremium luxury product showcase with cinematic effects
Luxury PerfumeElegant fragrance advertising with bokeh and shimmer effects
Elite CasinoHigh-energy casino and gaming promotional animations
Golden SpinPrize wheel and spin-to-win style engagement
DeFi PulseCryptocurrency and fintech ads with data-driven aesthetics
Focus ZoomCinematic zoom and focus effects for dramatic reveals
Ken BurnsSmooth pan-and-zoom photo animation effect
Image RevealDramatic image reveal with masking transitions
Glitch DecodeCyberpunk-inspired glitch effects with text decoding
Text SpotlightTypography-focused with spotlight and highlighting effects
GIF StyleFrame-by-frame animation recreating classic GIF aesthetics

Builder Features

HTML Custom Ad

For advanced advertisers who want full creative control. Write custom HTML and CSS that renders inside the ad container.

AI-Powered Dynamic Ad

Let Google Gemini AI automatically generate ad copy from a URL. The AI analyzes the landing page content and creates multiple variations for automatic rotation.

ZealUp Premium Ad Formats

ZealUp formats are high-impact overlay ads that appear on top of publisher page content. They deliver significantly higher visibility and engagement rates compared to standard in-page ads.

Note: ZealUp ads are served using dedicated JavaScript files that publishers embed on their sites alongside the standard ad-serving script. Each format has its own script for optimal performance.

Anchor Ad

A small, sticky ad that floats in the bottom-right corner of the viewport. It stays visible as the user scrolls and includes a close button for user control.

Sticky Bar

A full-width bar that sticks to the top or bottom of the viewport. Commonly used for announcements, promotions, and high-visibility CTA campaigns.

Vignette (Full-Screen Interstitial)

A full-screen overlay ad that appears between page loads. This premium format captures maximum attention and is commonly used by major ad networks.

Dynamic Pricing Engine

At the heart of Zeal Ad Manager is an intelligent, real-time pricing engine that calculates ad costs dynamically based on multiple factors. This creates a fair, performance-based ecosystem where high-quality publishers earn more and advertisers pay appropriate rates.

How Pricing Works

Every impression and click is priced using this formula:

Final Price = Base Rate × Geographic Multiplier × Performance Multiplier

Base Rates

Geographic Multiplier

Different countries have different advertising value. Configure tier-based multipliers in settings:

# Example Country Tier Configuration
US,CA,GB,AU:1.5       # Tier 1 - Premium markets (1.5x rate)
DE,FR,JP,KR:1.2       # Tier 2 - Strong markets (1.2x rate)
BR,MX,IN,ID:0.8       # Tier 3 - Emerging markets (0.8x rate)
# All unlisted countries default to 1.0x

Performance Multiplier

Publisher sites with higher click-through rates (CTR) command higher prices, rewarding quality content and engaged audiences. This multiplier is calculated automatically based on historical performance data.

Revenue Split

After the final price is calculated, the revenue is split between the network (you) and the publisher based on the Publisher Revenue Share percentage configured in General Settings.

# Example with 70% Publisher Share
Ad Click Revenue: $0.30
Publisher Earnings: $0.30 × 70% = $0.21
Network Earnings:  $0.30 × 30% = $0.09

Advertiser Dashboard

The advertiser dashboard is a self-service frontend interface where advertisers manage their campaigns, track performance, and fund their accounts. It's rendered by the [zam_advertiser_dashboard] shortcode.

Creating a Campaign

  1. Log in as an Advertiser and navigate to the Advertiser Dashboard
  2. Click "Create New Ad"
  3. Choose an ad format (Spotlight, Banner, Story, App Install, HTML, Animated, or AI Dynamic)
  4. Fill in the campaign details:
    • Campaign Name — Internal name for your campaign
    • Destination URL — Where users go when they click the ad
    • Creative Assets — Upload images, write headlines, descriptions, and CTA text
  5. Configure targeting options (see below)
  6. Set your campaign budget
  7. Submit the campaign for review (or it goes live immediately if auto-approve is enabled)
  8. Complete payment via WooCommerce checkout

Targeting Options

Advertisers can narrow their audience using the following targeting criteria:

Targeting Type Description
Device Targeting Target Desktop only, Mobile only, or All Devices
Country Targeting Select specific countries from a list of 200+ options (powered by GeoIP)
Site Category Targeting Target ads to specific publisher site categories (e.g., Technology, Sports, Finance)

Campaign Analytics

Each campaign includes detailed performance metrics:

Billing & Funding

Publisher Dashboard

The publisher dashboard is a frontend interface where publishers manage their sites, get ad code, track earnings, and request withdrawals. It's rendered by the [zam_publisher_dashboard] shortcode.

Adding a Site

  1. Log in as a Publisher and navigate to the Publisher Dashboard
  2. Click "Add New Site"
  3. Enter your site details:
    • Site URL — The full URL of your website
    • Site Name / Description — A description of your site's content
    • Category — Select the most relevant site category
  4. Submit the site for verification

Site Verification

To prove site ownership, publishers must add a verification meta tag to their site's <head> section:

<meta name="zeal-ad-verification" content="YOUR_UNIQUE_CODE">

The unique verification code is provided in the publisher dashboard after submitting a site. Once the tag is in place:

Upon verification, the plugin triggers AI keyword analysis (if Gemini is configured) to extract relevant content keywords from the publisher's site for better ad matching.

Getting the Ad Code

Once a site is approved, publishers can access their ad-serving code from the dashboard. The code consists of JavaScript snippets that they paste into their site's HTML:

<!-- Zeal Ad Manager - Standard Ad Zone -->
<div id="zam-ad-zone" data-site-id="YOUR_SITE_ID" data-template="spotlight"></div>
<script src="https://your-network.com/wp-content/plugins/zeal-ad-manager/public/zam-ad-server.js"></script>

For ZealUp premium formats, separate scripts are provided:

<!-- Anchor Ad -->
<script src=".../public/zealup-anchor.js" data-site-id="YOUR_SITE_ID"></script>

<!-- Sticky Bar -->
<script src=".../public/zealup-sticky-bar.js" data-site-id="YOUR_SITE_ID"></script>

<!-- Vignette -->
<script src=".../public/zealup-vignette.js" data-site-id="YOUR_SITE_ID"></script>

Earnings & Withdrawals

Note: Publisher earnings are calculated from the revenue split defined in General Settings. Earnings are processed via scheduled cron jobs (every 30 minutes for impressions, hourly for clicks).

Ad Serving Architecture

Zeal Ad Manager uses a modern, high-performance ad delivery system built on vanilla JavaScript with no framework dependencies.

Shadow DOM Isolation

All ads are rendered inside a Shadow DOM container. This provides complete CSS isolation between the ad creative and the publisher's site, preventing style conflicts in either direction.

GeoIP Targeting

Geographic targeting is powered by the bundled MaxMind GeoLite2 Country database. This database operates entirely locally on your server:

CORS & Security

Since ads are served cross-origin (from your WordPress site to external publisher sites), the plugin implements a secure CORS policy:

Performance Features

Scheduled Background Tasks

The plugin registers several WordPress cron jobs for background processing:

Task Frequency Purpose
Process Impressions Every 30 minutes Calculates charges and publisher earnings from impression data
Process Clicks Hourly Calculates charges and publisher earnings from click data
Calculate Pending Earnings Every 30 minutes Updates publisher pending balance totals
Fraud Detection Daily Analyzes click/impression patterns for suspicious activity
Regenerate AI Content Weekly Refreshes AI-generated ad copy for dynamic ads
Re-Analyze Publisher Keywords Weekly Updates AI-generated keywords for publisher sites

Important: WordPress cron is triggered by site visits. For a production ad network, it's strongly recommended to set up a real server cron job to ensure tasks run on schedule regardless of traffic. Add to your server's crontab:

*/5 * * * * wget -q -O - https://your-site.com/wp-cron.php?doing_wp_cron > /dev/null 2>&1

Shortcodes Reference

Zeal Ad Manager provides 9 shortcodes for embedding dashboards, registration forms, and ad zones on any WordPress page. The three dashboard/registration shortcodes are automatically placed on pages created during plugin activation.

Dashboard & Registration Shortcodes

Shortcode Description Parameters Access
[zam_advertiser_dashboard] Full advertiser dashboard with campaign management, creation, analytics, and billing history None zam_advertiser role or admin
[zam_publisher_dashboard] Full publisher dashboard with site management, ad code, earnings tracking, and withdrawals None zam_publisher role or admin
[zam_register_form] Registration form with Advertiser/Publisher role selection. Shows a "go to dashboard" message if already logged in None Public (logged-out users)

Ad Display Shortcodes

These shortcodes display ad zones on your own WordPress site. They are primarily used for internal ad serving — publisher sites use the JavaScript ad code from their dashboard instead.

General Ad Zone

[zam_ad_zone] — The primary shortcode for displaying any ad format. All parameters can be configured to control exactly which ads appear.

Parameter Type Required Default Description
site_id Integer Yes The publisher site ID. Determines which ads are eligible to serve. Find this in the publisher dashboard or admin panel under the site's listing.
template String No spotlight The ad format to display. Accepted values: spotlight, banner, story, app-install, html, ai-dynamic-text, animated
ad_id String No Empty Comma-separated list of specific ad IDs to serve. When empty, any eligible ad matching the template and targeting criteria will be shown.

Examples

<!-- Display a Spotlight ad (300x250) -->
[zam_ad_zone site_id="42" template="spotlight"]

<!-- Display a Banner ad (728x90) -->
[zam_ad_zone site_id="42" template="banner"]

<!-- Display a Story ad (vertical) -->
[zam_ad_zone site_id="42" template="story"]

<!-- Display an App Install ad -->
[zam_ad_zone site_id="42" template="app-install"]

<!-- Display a custom HTML ad -->
[zam_ad_zone site_id="42" template="html"]

<!-- Display an AI Dynamic ad -->
[zam_ad_zone site_id="42" template="ai-dynamic-text"]

<!-- Display an Animated ad -->
[zam_ad_zone site_id="42" template="animated"]

<!-- Display a specific ad by ID -->
[zam_ad_zone site_id="42" template="spotlight" ad_id="105"]

<!-- Display one of several specific ads (randomly selected) -->
[zam_ad_zone site_id="42" template="banner" ad_id="105,210,315"]

Template-Specific Convenience Shortcodes

For convenience, each ad format also has its own dedicated shortcode that automatically sets the template parameter. These accept the same site_id (required) and ad_id (optional) parameters.

Shortcode Equivalent To Ad Format
[zam_spotlight_ad_zone site_id="42"] [zam_ad_zone site_id="42" template="spotlight"] Spotlight (300×250)
[zam_banner_ad_zone site_id="42"] [zam_ad_zone site_id="42" template="banner"] Banner (728×90)
[zam_story_ad_zone site_id="42"] [zam_ad_zone site_id="42" template="story"] Story (Vertical)
[zam_app_install_ad_zone site_id="42"] [zam_ad_zone site_id="42" template="app-install"] App Install
[zam_html_ad_zone site_id="42"] [zam_ad_zone site_id="42" template="html"] HTML Custom

Convenience Shortcode Examples

<!-- These pairs are equivalent: -->
[zam_spotlight_ad_zone site_id="42"]
[zam_ad_zone site_id="42" template="spotlight"]

<!-- With specific ad IDs -->
[zam_banner_ad_zone site_id="42" ad_id="105,210"]
[zam_ad_zone site_id="42" template="banner" ad_id="105,210"]

Note: The site_id parameter is always required for ad zone shortcodes. Without it, no ads will be served. You can find a site's ID in the admin panel under the publisher sites listing, or in the publisher's dashboard.

How Ad Zones Work

When an ad zone shortcode is placed on a page:

  1. The shortcode renders a <div class="zeal-ad-unit"> container with data attributes for site_id, template, and optionally ad_id.
  2. The zam-ad-server.js script detects the container and calls the REST API endpoint (/wp-json/zeal-ad-manager/v1/serve).
  3. The API selects an eligible ad based on template, targeting (device, country, categories), budget availability, and fill rate.
  4. The ad is rendered inside a Shadow DOM container for complete CSS isolation from the host page.
  5. Impressions are tracked automatically when the ad becomes 50% visible in the viewport via IntersectionObserver.
  6. Clicks are tracked and redirected through the plugin's click tracking endpoint.

User Roles & Capabilities

The plugin creates two custom WordPress user roles upon activation:

Role ID Capabilities
Advertiser zam_advertiser
  • Create and manage ad campaigns
  • Fund campaigns via WooCommerce
  • View campaign analytics and billing history
  • Use the Animated Ad Builder
  • WordPress admin bar is hidden
Publisher zam_publisher
  • Submit websites for approval
  • Access ad-serving code after verification
  • Track earnings and request withdrawals
  • Manage payment methods
  • WordPress admin bar is hidden

Note: Both roles have the WordPress admin bar hidden for a cleaner frontend experience. Users register via the [zam_register_form] shortcode and select their role during registration.

Fraud Detection System

Zeal Ad Manager includes an automated fraud detection system that runs daily to protect advertisers from invalid clicks and suspicious activity.

What It Monitors

Automated Actions

Admin Visibility

The admin dashboard surfaces fraud detection findings in reports, allowing admins to manually investigate flagged sites and take additional action if needed.

External Services

Zeal Ad Manager connects to the following external services. All connections are opt-in and require manual configuration.

Google Gemini AI API

DetailInformation
PurposeAuto-generate keywords for ads and publisher sites; generate AI ad copy
Data SentWebsite URLs and public HTML content (no visitor data)
When UsedWhen admin enables AI and provides a Gemini API key
ProviderGoogle LLC
API Endpointhttps://generativelanguage.googleapis.com/v1/
Terms of Serviceai.google.dev/gemini-api/terms
Privacy Policypolicies.google.com/privacy

RapidAPI — App Store Data Service

DetailInformation
PurposeFetch app icons, ratings, descriptions for App Install ads
Data SentApp store URLs only (no user data)
When UsedWhen an advertiser creates an App Install ad with an app store URL
ProviderRapidAPI
API Endpointhttps://app-store-and-google-play-api.p.rapidapi.com/
Terms of Servicerapidapi.com/terms
Privacy Policyrapidapi.com/privacy

MaxMind GeoLite2 Database (Bundled)

DetailInformation
PurposeIP-to-country lookups for geographic targeting
Data SentNone — operates entirely locally
Database Fileincludes/geoip/GeoLite2-Country.mmdb
LicenseCC BY-SA 4.0
More InfoMaxMind GeoLite2

Uninstallation

Zeal Ad Manager can be cleanly uninstalled with optional data removal.

Standard Uninstall

Deactivating and deleting the plugin via the WordPress Plugins page will remove all plugin files. By default, your data (ads, sites, settings, tables) is preserved for safety.

Complete Data Removal

If you want to remove all plugin data permanently, follow these steps before uninstalling:

  1. Go to Zeal Ad Manager → Settings → Tools
  2. Check the "Delete Data on Uninstall" checkbox
  3. Save settings
  4. Then deactivate and delete the plugin

Warning: With this option enabled, uninstalling the plugin will permanently delete:

Your site's content, other plugins, and themes are never affected.

Troubleshooting

Common issues and their solutions.

Ads Not Displaying on Publisher Sites

Check CORS Settings

Symptom: Browser console shows CORS errors, ads don't load

Solution:

Check Publisher Site Status

Symptom: API returns empty results

Solution:

Check Ad Availability

Symptom: Site is approved but no ads appear

Solution:

Ads Appear Unstyled or Broken

Symptom: Ads display with broken layout or no styling on first load

Solution: This is typically a caching issue. The plugin includes a built-in FOUC (Flash of Unstyled Content) prevention system. If you still see this issue:

WooCommerce Integration Issues

Advertiser Can't Fund Campaign

Solution:

AI Features Not Working

Keywords Not Generating

Solution:

Emails Not Sending

Solution:

Cron Jobs Not Running

Symptom: Earnings not updating, fraud detection not running

Solution: WordPress cron is "pseudo-cron" triggered by page visits. For a production ad network:

  1. Add define('DISABLE_WP_CRON', true); to wp-config.php
  2. Set up a real server cron job:
*/5 * * * * wget -q -O - https://your-site.com/wp-cron.php?doing_wp_cron > /dev/null 2>&1

Publisher Verification Failing

Solution:

Support & Updates

Getting Support

Need Help?

If you encounter issues not covered in this documentation, we're here to help:

  • Support Portal: Submit a ticket edubrazeal.com
  • Documentation: Check this guide for detailed setup and troubleshooting
  • Response Time: We typically respond within 24-48 business hours

When contacting support, please include:

  • Your WordPress version and PHP version
  • Plugin version number
  • A description of the issue with screenshots if possible
  • Any browser console errors (right-click → Inspect → Console tab)
  • Whether the issue occurs with other plugins deactivated

Updates

Zeal Ad Manager receives regular updates with new features, bug fixes, and security patches.

Installing Updates

Always back up your site before updating! Use a backup plugin or your hosting provider's backup tools.

  1. Go to Plugins → Add New → Upload Plugin
  2. Upload the new zip file
  3. Click "Replace current with uploaded"
  4. Verify everything works correctly after the update

Best Practices