
內容簡介
Zinn® Reseller Toolkit 外掛專為轉售 Zinn® 主機的使用者設計,讓您能夠將 WordPress 網站與您的轉售帳號連接,提供客戶無縫的服務體驗。此外掛具備多項功能,讓您輕鬆管理域名搜尋、客戶面板連結及 WooCommerce 產品設定。
【主要功能】
• 域名搜尋功能,實時顯示可用性
• 客戶面板快速連結,便捷登入主機管理
• WooCommerce 整合,輕鬆銷售主機產品
• 支援多達五個域名擴展選項
• 搜尋結果快取,減少對註冊商的請求
外掛標籤
開發者團隊
📦 歷史版本下載
原文外掛簡介
If you resell Zinn® hosting, this plugin connects your own WordPress site to your reseller account so your customers never have to leave it.
It has three parts and they are separate switches. Turn on only what you need — nothing that is switched off loads any code, registers any hook or enqueues any stylesheet.
1. Domain search
Put [zinn_domain_search] on any page. A visitor types a name, and the results come back live. Once your reseller key is set they come from your own domain account with your own prices on them; before that, the search already works against the public catalogue and its prices.
No JavaScript at all. The form is a plain search that works with scripting off, is crawlable, and produces a shareable result URL.
Three honest answers, not two. Available, already registered, and “we could not check” — because when no registrar can be reached, telling a visitor a name is taken makes them abandon a name that may well be free.
Results are cached for five minutes so a busy page does not hammer the registry.
Attributes:
[zinn_domain_search placeholder="Find your domain" button="Search" tlds="com,co.uk,io"]
tlds accepts up to five extensions. Leave it out and the default set is used.
2. Panel link
Put [zinn_panel_link] anywhere a signed-in customer will see it — a My Account page is the usual home. It renders a single link that takes them straight into their hosting panel, already signed in.
The sign-in link is minted when the link is clicked, not when the page is rendered, so it never sits in a page cache and never reaches a crawler. It is single-use and expires within minutes.
[zinn_panel_link label="Manage my hosting"]
3. WooCommerce provisioning
Sell hosting as an ordinary WooCommerce product, take the money through your own gateway into your own account, and hosting is set up the moment the order is paid.
Set the Zinn® product line on the product’s Inventory tab, or set one default for the whole shop in the plugin settings.
The customer’s chosen hostname is read from the order item’s zinn_domain meta — set it from your own domain field, or from the domain search above.
A returning customer’s second order lands under the same client account, not a second one.
Every call is idempotent, so a gateway retry or an order moved from Processing to Completed can never provision twice.
If provisioning fails, the reason is written to the order as a note and shown in a panel on the order screen — never only to a PHP log where nobody would find it.
External services
AI apps you connect (MCP sign-in)
Only when an AI app such as Claude or ChatGPT starts connecting to the site’s MCP server does the site fetch that app’s public OAuth client metadata from the address the app gives, for example https://claude.ai/oauth/mcp-oauth-client-metadata or https://chatgpt.com/oauth/client.json. No site content is sent.
Claude: terms https://www.anthropic.com/legal/consumer-terms, privacy policy https://www.anthropic.com/legal/privacy
ChatGPT: terms https://openai.com/policies/terms-of-use/, privacy policy https://openai.com/policies/privacy-policy/
This plugin lets you sell Zinn Digital® hosting from your own WordPress site. It is a front end
for the Zinn® reseller API and requires a reseller account.
What is sent, and when
Domain search (when a visitor searches). The search term is sent to
https://api.zinndigital.com/v1/public/domains/search (or /v1/domains/search when
authenticated) to check availability and price. The search term is the visitor’s input; no
other visitor data, IP address or identifier is added by this plugin.
Programme and plan data. /v1/reseller/program is read to render your plans and prices.
Provisioning (when a WooCommerce order is paid). Two requests, in order. The customer’s
name and e-mail go to /v1/orgs so their hosting account can be created, and the ordered
plan and domain name then go to /v1/sites so the site itself can be provisioned. This is a
transfer of your customer’s personal data to Zinn Digital® as a processor, and you should
reflect it in your own privacy policy.
Client sign-in (when a signed-in customer presses “Open hosting panel”). This site asks
/v1/reseller/services//sso, using your reseller credential, for a one-time link
and then redirects the browser to https://app.zinndigital.com. No password and no customer
credential passes through this site — only the identifier of the service being opened.
AI agents (MCP), only when an administrator’s AI app asks. Each request uses your reseller
credential: /v1/reseller/overview, /v1/orgs (list or create a client: its name and
currency), /v1/reseller/clients/
/v1/catalog/plans, /v1/reseller/services (list sites) and
/v1/reseller/services//suspend / unsuspend (with your own note), and /v1/sites
(create a site: client, product line and domain name). Nothing is sent unless an administrator
connected an AI app with an application password and that app called the action; switch it off
under Reseller Toolkit → AI agents (MCP).
Nothing is transmitted until you enter reseller API credentials.
Service terms: https://zinndigital.com/legal/terms
Privacy policy: https://zinndigital.com/legal/privacy
Support diagnostics (only when you press send). If you ask us for help, the plugin can send
a support report to https://api.zinndigital.com/v1/connector/diagnostics. You are shown the
exact payload first, already redacted, and nothing leaves your site until you press send.
Credentials are excluded by declaration rather than by matching key names, and render as
[not sent — credential]. The plugin never sends this on its own initiative.
Translations
Every string this plugin adds to your admin is translated into 57 languages — labels, notices,
errors and settings, not a subset. The catalogues are bundled in the plugin, so they work as soon
as you set your site language; there is no separate language pack to install.
Every user-visible string is complete in every one of the 53 languages WordPress can serve
today:
Amharic (am), Arabic (ar), Azerbaijani (az), Bulgarian (bg_BG), Bengali (Bangladesh)
(bn_BD), Czech (cs_CZ), German (de_DE), Greek (el), Spanish (Spain) (es_ES), Persian
(fa_IR), French (France) (fr_FR), Gujarati (gu), Hebrew (he_IL), Hindi (hi_IN), Croatian
(hr), Hungarian (hu_HU), Armenian (hy), Indonesian (id_ID), Italian (it_IT), Japanese
(ja), Georgian (ka_GE), Kazakh (kk), Khmer (km), Kannada (kn), Korean (ko_KR), Lao (lo),
Malayalam (ml_IN), Mongolian (mn), Marathi (mr), Malay (ms_MY), Myanmar (Burmese)
(my_MM), Nepali (ne_NP), Dutch (nl_NL), Panjabi (India) (pa_IN), Polish (pl_PL), Pashto
(ps), Portuguese (Brazil) (pt_BR), Romanian (ro_RO), Russian (ru_RU), Sinhala (si_LK),
Albanian (sq), Serbian (sr_RS), Swahili (sw), Tamil (ta_IN), Telugu (te), Thai (th),
Tagalog (tl), Turkish (tr_TR), Ukrainian (uk), Urdu (ur), Uzbek (uz_UZ), Vietnamese
(vi), Chinese (China) (zh_CN)
A further 4 ship complete in the plugin — Hausa (ha), Somali (so_SO), Tajik (tg), Yoruba (yo) — but
WordPress core does not currently provide a locale for them, so WordPress cannot load them.
Right-to-left
Arabic, Persian, Hebrew, Pashto and Urdu are right-to-left. Every screen this plugin adds was
rendered in a real WordPress install in each of those languages and checked, not assumed.
For translators
languages/ holds the `.pot` template plus a `.po`, `.mo` and `.l10n.php` for every language, so
corrections and new languages can be contributed directly.
