WP Manifestindependent plugin directory
manifest / builders / templify-api-server-for-elementor

Templify API Server for Elementor

A lightweight, high-performance REST API server to serve Elementor templates, pages, and section libraries across Single Site & Multisite environments.

by Noruzzaman · github.com/noruzzamans/templify-api-server-for-elementor · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/noruzzamans/templify-api-server-for-elementor/archive/refs/heads/main.zip

Readme

Templify API Server for Elementor 🚀

A lightweight, high-performance Server-Side REST API engine that allows developers and agencies to build their own Elementor Template Library Cloud. Serve Elementor templates, pages, and section libraries across Single Site & Multisite WordPress environments.


🏗️ Architecture: Server-Side vs. Client-Side

It is crucial to understand how Templify API Server for Elementor operates within a template ecosystem:

 ┌─────────────────────────────────────────────────────────┐
 │                   SERVER-SIDE WEBSITE                   │
 │   (Installs: Templify API Server for Elementor)         │
 │   - Design Sections via Saved Templates                 │
 │   - Design Pages via Standard WordPress Pages           │
 │   - Exposes REST API (/wp-json/templify/v1/index)       │
 └────────────────────────────┬────────────────────────────┘
                              │
                    REST API (JSON Data)
                              │
 ┌────────────────────────────▼────────────────────────────┐
 │                   CLIENT-SIDE WEBSITE                   │
 │   (Installs: Your Custom Elementor Addon / Plugin)       │
 │   - Fetches API Index from Server                       │
 │   - Renders Template Library Modal in Elementor Editor  │
 │   - Imports Elementor JSON payload into User Page       │
 └─────────────────────────────────────────────────────────┘
  • Server-Side (This Plugin): Installed on your main central WordPress site. It scans, extracts Elementor layout JSON (_elementor_data), registers categories, and serves endpoints.
  • Client-Side: Installed on your users' or customers' WordPress websites (e.g. an Elementor Addon Plugin). It calls this server's API to fetch, display, and import templates into their Elementor builder.

📖 Step-by-Step Template Creation Guide

To ensure templates are correctly mapped to Sections and Pages tabs in the API, follow these guidelines:

🧩 1. How to Create Section Templates (mapped to Sections Tab)

  • Go to WordPress Admin → Templates → Saved Templates → Add New.
  • Choose Section as the template type and give it a title.
  • Edit with Elementor and build your section layout.
  • Assign Elementor Library Categories & Tags from the right sidebar.
  • Hit Publish.
  • Result: Automatically exposed via /templify/v1/sections and mapped to the Sections tab in the REST API.

📄 2. How to Create Page Templates (mapped to Pages Tab)

  • Go to WordPress Admin → Pages → Add New Page.
  • Give your page a title and click Edit with Elementor.
  • Build your full landing page or page layout using Elementor.
  • Assign standard WordPress Categories & Tags from the Page document settings.
  • Hit Publish.
  • Result: Automatically exposed via /templify/v1/pages and mapped to the Pages tab in the REST API.

🌐 3. Full Site Templates (mapped to Sites Tab in Multisite)

  • On WordPress Multisite Network, each sub-site acts as a Full Site Demo.
  • Set the front page in Settings → Reading on the sub-site.
  • Result: Automatically aggregated and exposed via the API under the Sites tab.

🚀 REST API Endpoints

The API namespace is templify/v1.

Endpoint Method Description
/wp-json/templify/v1/index GET Retrieve the complete unified index (templates, tags, categories, type_tags).
/wp-json/templify/v1/pages GET Retrieve all Elementor-built pages.
/wp-json/templify/v1/pages/{slug} GET Get full Elementor JSON payload for a page.
/wp-json/templify/v1/sections GET Retrieve all Elementor library section templates.
/wp-json/templify/v1/sections/{name} GET Get full Elementor JSON payload for a section.
/wp-json/templify/v1/templates GET Alias endpoint for unified index.
/wp-json/templify/v1/templates/{id} GET Get template by Multisite/Single ID (e.g. 1_102 or 102).
/wp-json/templify/v1/categories GET List all active categories categorized by page, section, and site.

🛠️ Developer Integration Guide (Building a Client Addon)

To build your own client plugin that connects to this API server:

Step 1: Fetch the Unified Index

Your client plugin sends a GET request to: https://your-server-domain.com/wp-json/templify/v1/index

Sample Response:

{
  "templates": [
    {
      "id": "102",
      "slug": "hero-section",
      "title": "Hero Section 01",
      "type": "section",
      "category": "hero",
      "categories": ["hero"],
      "tags": ["banner"],
      "is_pro": false,
      "url": "https://your-server-domain.com/wp-json/templify/v1/templates/102"
    }
  ],
  "categories": {
    "section": { "hero": "Hero" }
  },
  "type_tags": {
    "section": ["banner", "services"]
  }
}

Step 2: Fetch Template JSON Payload

When a user clicks "Import" in your client plugin library modal, fetch the template layout JSON from: https://your-server-domain.com/wp-json/templify/v1/templates/{id}

Step 3: Insert Template into Elementor Builder

In your client plugin, parse the returned content array and insert it using Elementor's JS API or PHP Import Manager:

// Example Client JS insertion into Elementor Editor
elementor.getPanelView().getCurrentPageView().importTemplate( templateData.content );

🌟 Key Features

  • 🌐 Dual Compatibility: Works out-of-the-box on both Single Site and WordPress Multisite Network setups.
  • ⚡ Unified Index API: Single optimized endpoint returning templates, categories, and top 5 tags.
  • 🏷️ Smart Category & Tag System: Auto-hides empty categories (count = 0) and sorts top used tags.
  • 📦 Asset Exporters: Auto-extracts dependent Fluent Forms, Contact Form 7, and Nav Menus.
  • 🔒 Pro/Free Template Flags: Built-in meta controls to flag templates as Pro or Free.

💻 Installation & Setup

Option 1: Direct Download (For General Users)

  1. Download the latest release .zip or click Code → Download ZIP on GitHub.
  2. Upload the templify-api-server-for-elementor folder to your WordPress /wp-content/plugins/ directory.
  3. Activate the plugin through the Plugins menu in WordPress (or Network Activate on Multisite).

Option 2: Git Clone & Composer (For Developers)

  1. Clone this repository into your WordPress plugins folder:
    git clone https://github.com/noruzzamans/templify-api-server-for-elementor.git
  2. Navigate into the plugin directory and run Composer to generate optimized autoloaders:
    cd templify-api-server-for-elementor
    composer install --no-dev -o
  3. Activate the plugin via WordPress Admin.

👤 Author

Noruzzaman


📄 License

This project is licensed under the GPL-2.0 License.

Read the full README on GitHub →