ContentSage Connector by GTS

Description

ContentSage Connector is the official WordPress companion plugin for the ContentSage SaaS platform operated by Ganda Tech Services Pty Ltd. ContentSage is a hosted service that researches topics, writes long-form blog posts with verified academic citations, and adds relevant internal links by analysing your existing content. This plugin connects your self-hosted WordPress site to your ContentSage account so that posts created in ContentSage are delivered directly into your WordPress editor as native Gutenberg blocks.

The plugin itself does not generate content locally. All AI processing, research, citation verification, and internal-link analysis happen on ContentSage servers; the plugin only receives the finished post payload via an authenticated REST endpoint, converts the supplied HTML to Gutenberg blocks, and creates the WordPress post.

Key Features

  • AI-Powered Content — Receive SEO-optimised blog posts generated by ContentSage directly into WordPress.
  • Verified Citations — Every fact includes a source citation, maintaining editorial integrity.
  • Auto Internal Linking — ContentSage analyses your existing content and adds relevant internal links.
  • Gutenberg Native — Content arrives as native Gutenberg blocks: paragraphs, headings (H2–H6), lists, blockquotes, code blocks, and images.
  • SEO Ready — Automatically populates meta title and description for Yoast SEO, RankMath, and AIOSEO (v4 Models API).
  • Draft or Publish — Posts can arrive as drafts for review, publish immediately, or be scheduled for a future date.
  • Featured Images — Featured images are automatically downloaded and added to your Media Library.
  • Author Attribution — Assign generated posts to any WordPress author on your site.
  • Connection Status — Clear dashboard indicator showing whether your site is connected.

How It Works

  1. Install and activate the plugin.
  2. Go to Settings ContentSage Connector and enter your ContentSage API key.
  3. Your site is now connected. ContentSage can publish content directly to your WordPress installation.
  4. Review and edit posts from your WordPress dashboard before publishing (if using draft mode).

External Service

This plugin connects WordPress to the ContentSage service, a third-party SaaS operated by Ganda Tech Services Pty Ltd (Australia). The service is required for the plugin to function — without an active ContentSage account and API key, the plugin has no content to deliver.

What the service does

ContentSage performs AI research, long-form blog post generation, academic citation verification, and internal-link analysis. These operations cannot reasonably be performed locally on a self-hosted WordPress server: they require large language models, web research, and a vector index of your existing site content, all hosted on the ContentSage backend.

What data is sent to the service

The plugin makes outbound HTTPS requests to https://write-gts.cchk.info (the live ContentSage backend) under the following circumstances:

  • When you save your API key in Settings ContentSage Connector, the plugin POSTs to /api/v1/verify-plugin-key with: the API key, your site_url, your WordPress version, and the plugin version. This is used to validate the key and pair your site to your ContentSage account.
  • When you click Test Connection in the settings page, the same request is made to confirm the key is still valid.

The plugin itself does not send post content, user data, page views, or any other tracking information to the ContentSage service. Posts move in the opposite direction: ContentSage pushes finished posts into WordPress via the plugin’s authenticated REST endpoint.

Service URLs

You must agree to the ContentSage Terms of Service and Privacy Policy before using the service.

Source Code & Development

This plugin’s source code is included in the distributed package — every file under includes/, assets/css/, and assets/js/ is plain, human-readable PHP, CSS, and JavaScript. There are no minified bundles, build artifacts, or compiled assets shipped in this plugin: what you see in the zip is the canonical source.

The plugin is developed and maintained by Ganda Tech Services Pty Ltd. Source code is shipped with each release in this directory; development takes place in a private repository, and any contributor wishing to study, modify, or fork the plugin may do so directly from the released source under the GPL-2.0-or-later licence.

For support, bug reports, or contribution requests, contact us at https://write-gts.cchk.info/support.

Privacy

This plugin stores your ContentSage API key (encrypted with AES-256-CBC) in wp_options. No personal data, post content, or user activity is transmitted to ContentSage servers by this plugin — the plugin only receives content from the service. The full ContentSage privacy policy (covering the SaaS itself) is published at https://write-gts.cchk.info/privacy.

Installation

Automatic Installation

  1. Log in to your WordPress dashboard.
  2. Navigate to Plugins Add New.
  3. Search for “ContentSage Connector by GTS”.
  4. Click Install Now, then Activate.
  5. Go to Settings ContentSage Connector and enter your API key.

Manual Installation

  1. Download the plugin zip.
  2. Upload the contentsage-connector directory to /wp-content/plugins/.
  3. Activate the plugin under Plugins Installed Plugins.
  4. Go to Settings ContentSage Connector and enter your API key.

Requirements

FAQ

Where do I find my ContentSage API key?

Log in to your ContentSage account at https://write-gts.cchk.info, navigate to Settings API & Integrations, and copy your Plugin API key.

Will posts be published immediately?

By default, posts arrive as drafts so you can review them first. You can configure this per-generation in ContentSage to publish immediately or schedule for a future date and time.

Does this work with Yoast SEO, RankMath, or AIOSEO?

Yes. If any of these plugins is active, ContentSage Connector will automatically populate the SEO title and meta description fields for each post. AIOSEO is supported via its v4 Models API; Yoast and RankMath are supported via their post-meta keys.

Can I assign posts to a specific author?

Yes. In ContentSage you can specify the WordPress user ID for author attribution. If no author ID is provided, posts are assigned to the first administrator on the site.

Is the API key stored securely?

Yes. Your API key is encrypted using AES-256-CBC (via PHP’s OpenSSL extension) before being written to wp_options. The encryption key is derived from your site’s unique WordPress authentication salts.

What happens if I deactivate the plugin?

Deactivating the plugin prevents ContentSage from publishing new content to your site (REST endpoints become unavailable). Your existing posts and all plugin settings are preserved and fully restored when you reactivate.

What happens if I uninstall the plugin?

Uninstalling removes all plugin options (including the stored API key) from wp_options and removes all _contentsage_* post meta entries. Your published posts are not deleted.

Does this plugin work with WordPress Multisite?

Yes. Uninstall cleanup handles all sub-sites automatically.

Does this plugin require WooCommerce or any other plugin?

No. ContentSage Connector is fully standalone.

Is this plugin free? Are any features locked?

The WordPress plugin is free and fully functional. No features are gated, restricted, or locked behind a license. The plugin requires an active ContentSage SaaS account because the AI content generation runs on the service’s servers — pricing for the service is published at https://write-gts.cchk.info.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“ContentSage Connector by GTS” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.0.1

  • Security: SSRF defense in the featured-image sideloader. Resolves the
    supplied image host and rejects URLs that resolve to private, loopback,
    link-local, or otherwise non-public IPs (RFC1918, 169.254.x, ::1, fc00::/7).
    Prevents an attacker who controls the API key from pivoting through your
    WordPress host to internal services or cloud metadata endpoints.
  • Security: HEAD pre-check on featured-image URLs validates Content-Type
    and Content-Length before download. Rejects responses larger than 10 MB
    and content types outside the image whitelist (jpeg/png/gif/webp/avif).
    Stops 5 GB-stream DoS and HTML-disguised-as-image abuse.
  • Security: Per-key rate limit on POST /wp-json/contentsage/v1/publish
    — 60 publishes per hour and 600 per day per stored API key. Returns
    HTTP 429 when exceeded. Caps can be tuned via the
    gtscs_publish_rate_limit_hour / gtscs_publish_rate_limit_day filters.
  • Internal: counter buckets use a SHA-256 hash of the API key so the
    plaintext key never appears in transient option names.

1.0.0

  • Initial release.
  • Settings page (Settings ContentSage Connector) with API key management, connection status indicator, and test-connection button.
  • REST endpoint POST /wp-json/contentsage/v1/publish for receiving AI-generated posts.
  • REST endpoint GET /wp-json/contentsage/v1/status for connection health checks.
  • HTML-to-Gutenberg block converter (paragraphs, headings H2–H6, lists, blockquotes, code blocks, images, separators).
  • Automatic featured-image sideloading into the WordPress Media Library.
  • SEO meta support for Yoast SEO, RankMath, and AIOSEO (v4 Models API).
  • ContentSage meta box in the post editor showing provenance details.
  • AES-256-CBC encryption of stored API keys.
  • WordPress Multisite support in uninstall cleanup.