Title: Lestari Importer for Woo with Shopee
Author: Markas Studio
Published: <strong>2026 年 6 月 4 日</strong>
Last modified: 2026 年 6 月 4 日

---

搜索插件

![](https://ps.w.org/lestari/assets/banner-772x250.png?rev=3560985)

![](https://ps.w.org/lestari/assets/icon-256x256.png?rev=3560985)

# Lestari Importer for Woo with Shopee

 作者：[Markas Studio](https://profiles.wordpress.org/studiomarkas/)

[下载](https://downloads.wordpress.org/plugin/lestari.1.5.8.zip)

 * [详情](https://cn.wordpress.org/plugins/lestari/#description)
 * [评价](https://cn.wordpress.org/plugins/lestari/#reviews)
 *  [安装](https://cn.wordpress.org/plugins/lestari/#installation)
 * [开发进展](https://cn.wordpress.org/plugins/lestari/#developers)

 [支持](https://wordpress.org/support/plugin/lestari/)

## 描述

Lestari Importer turns Shopee listings into reviewable WooCommerce drafts. The companion
browser extension reads the Shopee product page the merchant is already looking 
at and sends the data, over a signed REST request, to a staging area inside the 
WordPress admin. Nothing is published automatically — every title, price, stock 
count, description, and image lands in staging first, ready for the merchant to 
edit, approve, or discard.

One paired site. One pairing code. One staging queue. No accounts to create, no 
third-party SaaS sitting in the middle of the data flow.

#### What Lestari Importer does

 * **Paired browser-extension intake** — the extension you install in your browser
   is the only thing that sends product data to your site; the WordPress plugin 
   never reaches out to Shopee servers itself.
 * **HMAC-SHA256 signed REST endpoint** — every receive call is authenticated with
   a per-site token established at pairing time and bound to the originating extension
   identifier.
 * **Review-first staging area** — incoming products are queued for human review
   with editable title, price, stock, description, categories, tags, gallery, and
   per-row variation matrix.
 * **Image sideloading with deduplication** — product images are downloaded into
   the WordPress media library, deduplicated by source URL and SHA-256 hash so re-
   imports do not flood your library.
 * **Duplicate handling** — choose to skip, update, or create a new copy when the
   importer sees a product it has imported before; detection works on a stable source-
   id postmeta key.
 * **HPOS-compatible** — the plugin reads and writes only its own staging tables
   plus WooCommerce’s standard `WC_Product` CRUD; it never touches WooCommerce orders,
   so it declares full High-Performance Order Storage compatibility.
 * **Report-a-Bug from the admin** — an optional, opt-in modal lets you send a focused
   bug report to the plugin author (only when you click Send; never in the background).
   See _Privacy & External Services_ below for the exact data sent.

#### Free vs Pro

The free plugin you are installing is the complete day-to-day importer. Lestari 
Importer Pro is an optional paid add-on, sold separately at the link below; it is**
not** bundled here and the free plugin does not depend on it.

**Free — the everyday import workflow**

 * Receive products from the paired browser extension via the signed REST endpoint
 * Staging-area review with editable title, price, stock, description, categories,
   tags, and gallery
 * Image sideloading with URL and SHA-256 deduplication
 * Duplicate handling: skip, update, or create a new copy
 * HPOS-compatible WooCommerce product creation
 * Report-a-Bug modal with opt-out diagnostics and a local 50-row bounded log
 * Clean uninstall, with an explicit “Keep my data” opt-in

**Pro — everything in Free, plus:**

 * **Variable Products** — explicit Variable import intent always creates a `WC_Product_Variable`
   parent and rebuilds the attribute/variation matrix, even when the scraper returned
   an empty variant list
 * **Per-product markup** — apply a percentage or flat-amount markup to the imported
   regular price, with live final-price preview in the staging editor and per-variant
   override
 * **Bulk-select import from a shop page** — pick multiple products at once from
   a Shopee shop URL via the extension’s selection mode
 * **Priority email support** — direct support channel for Pro licence holders

👉 **[Learn more about Lestari Importer Pro](https://studio.markashosting.com/plugins/lestari/lestari-pro/)**

#### About Shopee

Lestari Importer is **not** affiliated with, endorsed by, or connected to Shopee,
Sea Group, or any of their subsidiaries. “Shopee” is a trademark of its respective
owner and is used here only to describe the type of source data the companion browser
extension reads from the page the merchant is currently viewing.

### Privacy & External Services

Lestari Importer is built around an **inbound** data flow: the companion browser
extension, running in the merchant’s own browser, posts product data to a REST endpoint
on your WordPress site. Your site is the receiver. The plugin does **not** initiate
outbound HTTP requests during normal import operation — no telemetry, no analytics,
no automatic check-ins.

The only outbound HTTP request the plugin ever makes is the optional **Report a 
Bug** submission, and only when an administrator types into the modal and clicks
Send.

#### Data sent only when a bug report is submitted

 * The Subject and Message you type, verbatim.
 * An optional reply-to email address — only if you fill it in; left blank, the 
   submission is anonymous.
 * Up to three image attachments (drag-drop, file picker, or paste-from-clipboard).
   Images are auto-resized client-side to a 1920px longest edge with progressive
   JPEG quality steps so screenshots fit within the wire budget.
 * Optional diagnostics — opt-out, shown to you before sending: plugin version, 
   WordPress version, PHP version, MySQL version, WooCommerce version (if active),
   active theme name and version, locale, multisite flag, and PHP `memory_limit`.
 * **Never auto-collected**: site URL, administrator email, license keys, pairing
   tokens, user lists, active-plugin lists, or any WooCommerce order / customer /
   product data.

A local copy of every submission is written to a bounded log (the `lestari_importer_feedback_log`
option, capped at the 50 most recent entries, FIFO-rotated). The local log stores
per-attachment metadata only (filename, MIME, byte size) — never the image binary.

#### External service used

 * **Service:** [Markas Studio bug-report receiver](https://projects.markas.cloud/wp-json/markas/v1/plugin-bug)
 * **Purpose:** Deliver administrator-submitted bug reports to the plugin author’s
   private triage dashboard for support investigation. Data is sent only after you
   click Send — never automatically and never on any other admin screen.
 * **What is sent:** Exactly the payload described in the section above and shown
   to you under “See what will be sent” before the Send button enables.
 * **[Terms of Use](https://studio.markashosting.com/plugins/lestari/terms/)** ·**
   [Privacy Policy](https://studio.markashosting.com/plugins/lestari/privacy-policy/)**

#### Companion browser extension

The companion extension reads the Shopee product page that the merchant is viewing
in their browser and sends the extracted product data to _your_ WordPress site’s
own `/wp-json/lestari/v1/receive` endpoint, signed with the pairing token. This 
is an inbound request to your site; the WordPress plugin does not contact Shopee
servers itself. The extension is documented and downloaded from the plugin author’s
site: [https://studio.markashosting.com/plugins/lestari/extension/](https://studio.markashosting.com/plugins/lestari/extension/).

#### Data the plugin stores on your site

 * The staging area’s product rows (`wp_lestari_importer_staging`, `wp_lestari_importer_staging_items`).
 * Plugin settings (`lestari_importer_settings`, `lestari_importer_secret`, `lestari_importer_site_tokens`,`
   lestari_importer_pairing_pending`, `lestari_importer_keep_data_on_uninstall`).
 * Postmeta on each imported WooCommerce product, keyed by `_lestari_importer_source_id`(
   so duplicate detection works on re-import).
 * The Report-a-Bug bounded local log (`lestari_importer_feedback_log`, capped at
   50 rows). Attachment binaries are not included.

#### Data on uninstall

When you delete the plugin, all of the items above are removed unless you have enabled
_Keep data on uninstall_ in the Settings tab before uninstalling.

### Developer reference

The plugin exposes filters and actions so add-ons can extend its behaviour without
modifying core files:

 * `lestari/default_settings` (filter) — extend the default settings array on first
   install.
 * `lestari/admin/tabs` (filter) — register additional admin tabs.
 * `lestari/admin/render_tab` (filter) — render the body of a custom tab.
 * `lestari/admin/settings_tab_extra` (action) — append rows to the Settings tab.
 * `lestari/license/is_pro` (filter) — report Pro status from a separately-installed
   add-on.
 * `lestari/booted` (action) — fires after the plugin has finished booting.

## 安装

 1. Upload the plugin ZIP through _Plugins  Add New  Upload Plugin_, or unzip the `
    lestari` folder into `/wp-content/plugins/`.
 2. Activate the plugin via the _Plugins_ screen.
 3. Make sure WooCommerce 8.0 or newer is installed and active.
 4. Open **Lestari Importer** in the admin sidebar, generate a 6-digit pairing code,
    and enter that code in the companion browser extension.
 5. Open a Shopee product page in your browser, click the extension’s import action,
    and the product will appear in _Lestari Importer  Staging Area_ for review.

#### Requirements

 * WordPress 6.4 or newer.
 * WooCommerce 8.0 or newer, active.
 * PHP 7.4 or newer.

## 常见问题

### Do I need the companion browser extension?

Yes. The extension is the only component that reads data from a Shopee page; the
WordPress plugin only receives that data over its own REST endpoint. Without the
extension, there is no source of products.

### Does this plugin call the official Shopee API?

No. The plugin does not call the Shopee Open Platform API and does not contact Shopee
servers from your WordPress site. All product data originates from the page the 
merchant is viewing in their own browser, via the companion extension.

### How secure is the pairing?

Pairing uses a 6-digit code with a short expiry. After pairing, every receive request
from the extension is signed with HMAC-SHA256 using a per-site token established
at pairing time; the extension’s installation identifier is bound to that token 
and checked on every receive call.

### Will I lose my settings if I deactivate the plugin?

No. Deactivation leaves settings, the staging area, and the pairing token intact.
Data is removed only when you delete the plugin — and even then you can opt in to
keep it via the _Keep data on uninstall_ checkbox in _Settings_.

### How are existing settings preserved on upgrade?

The activator runs an idempotent migration from earlier internal identifier namespaces
into the current `lestari_importer_*` / `_lestari_importer_*` / `lestari/*` identifiers.
The migration is a no-op on fresh installs and on installs that are already on the
current namespace.

### Where do I get support?

Free support is available through the WordPress.org support forum for this plugin.
Priority support is available with [Lestari Importer Pro](https://studio.markashosting.com/plugins/lestari/lestari-pro/).

## 评价

此插件暂无评价。

## 贡献者及开发者

「Lestari Importer for Woo with Shopee」是开源软件。 以下人员对此插件做出了贡献。

贡献者

 *   [ Markas Studio ](https://profiles.wordpress.org/studiomarkas/)

[帮助将「Lestari Importer for Woo with Shopee」翻译成简体中文。](https://translate.wordpress.org/projects/wp-plugins/lestari)

### 对开发感兴趣吗?

您可以[浏览代码](https://plugins.trac.wordpress.org/browser/lestari/)，查看[SVN仓库](https://plugins.svn.wordpress.org/lestari/)，
或通过[RSS](https://plugins.trac.wordpress.org/log/lestari/?limit=100&mode=stop_on_copy&format=rss)
订阅[开发日志](https://plugins.trac.wordpress.org/log/lestari/)。

## 更新日志

#### 1.5.8

 * Fixed WordPress.org plugin review blockers from the manual round-two review:
    - All admin CSS and JavaScript are now enqueued via `wp_enqueue_style` / `wp_enqueue_script`—
      no inline `<style>` or `<script>` blocks remain. The legacy-notice suppressor
      and the plugin-row “Go Pro” link styling are real on-disk assets loaded only
      where they apply.
    - The two `require_once ABSPATH . 'wp-admin/includes/…'` calls flagged by the
      reviewer (`image.php` in the media sideloader and `plugin.php` in the active-
      plugin probe) have been removed; the helpers they were guarding have lived
      in core since well before our WP 6.4 floor.
    - Two unescaped echoes in `tab-pro.php` and `tab-pairing.php` (inline SVG icons
      and the Shopee wordmark) now pass through `wp_kses()` with strict per-element
      allowlists — no `phpcs:ignore` suppression remains.
    - The External Services section of this readme links the Terms of Use and Privacy
      Policy as proper Markdown links so the WordPress.org link-validation step 
      picks them up.
 * Refreshed the readme to clarify Free vs Pro and the affiliation-with-Shopee disclaimer
   at the top of the description.
 * No database or settings migration is required.

#### 1.5.7

 * Asset cache-busting and pointer-event fixes for the staging-area glossary modal.
 * Internal QA build.

#### 1.5.0

 * Renamed plugin to “Lestari Importer for Woo with Shopee” to comply with WordPress.
   org trademark and naming guidelines.
 * Updated text domain, admin slug, REST namespace, public URLs, and the affiliation
   disclaimer to use the new canonical slug `lestari`.

#### 1.4.13

 * Report-a-Bug modal: bounded local log (50 entries, FIFO), opt-out diagnostics,
   paste-from-clipboard, and an inline “See what will be sent” preview before Send.
 * Hardened sealed daily-import counter (AES-256-GCM envelope bound to the UTC date).
 * Pro Features tab is now a factual, non-intrusive description of the optional 
   paid add-on — no form fields, no inert inputs, no urgency copy. Hidden automatically
   when the Pro add-on registers its own License tab.

#### 1.4.0

 * HPOS compatibility declaration and Cart/Checkout-blocks compatibility declaration.
 * MIME-sniff from magic bytes for sideloaded images (JPEG / PNG / WebP).

#### 1.0.0

 * First public release of the importer with paired browser-extension intake, HMAC-
   signed REST endpoint, staging area, image sideloading with deduplication, and
   configurable duplicate handling.

## 额外信息

 *  版本 **1.5.8**
 *  最后更新：**1 天前**
 *  活跃安装数量 **不到10**
 *  WordPress 版本 ** 6.4 或更高版本 **
 *  已测试的最高版本为 **7.0**
 *  PHP 版本 ** 7.4 或更高版本 **
 *  语言
 * [English (US)](https://wordpress.org/plugins/lestari/)
 * 标签
 * [product import](https://cn.wordpress.org/plugins/tags/product-import/)[shopee](https://cn.wordpress.org/plugins/tags/shopee/)
   [staging](https://cn.wordpress.org/plugins/tags/staging/)[woocommerce](https://cn.wordpress.org/plugins/tags/woocommerce/)
 *  [高级视图](https://cn.wordpress.org/plugins/lestari/advanced/)

## 评级

尚未提交反馈。

[Your review](https://wordpress.org/support/plugin/lestari/reviews/#new-post)

[查看全部评论](https://wordpress.org/support/plugin/lestari/reviews/)

## 贡献者

 *   [ Markas Studio ](https://profiles.wordpress.org/studiomarkas/)

## 支持

有话要说吗？是否需要帮助？

 [查看支持论坛](https://wordpress.org/support/plugin/lestari/)