| 开发者 | kybern |
|---|---|
| 更新时间 | 2026年9月9日 20:59 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
documents./wp-content/uploads/... links for offloaded private files by redirecting them through signed S3 URLs.example.com/media-librarycircolari/2026/1234-circolare.pdfkybern-s3-storage folder to /wp-content/plugins/.Settings > Kybern S3 Storage.my-site-media or your preferred no-dot bucket name.example.com/media-library.56,52,28,27, and keep the Circulars S3 Subdirectory as circolari.circolari/[year]/ while keeping the permanent WordPress URL.S3 Delivery Health after configuration changes or a migration to verify every saved S3 mapping. The audit reads S3 metadata only and never repairs, moves, downloads, or deletes files.circolari/incoming/[year]/, for example circolari/incoming/2026/Circolare-N.01-2026.pdf. The importer runs every five minutes, creates a Media Library item, assigns the matching CIRCOLARI YYYY FileBird folder, verifies the final remote object, and removes the incoming source only after the mapping is saved.Yes, if your goal is to keep one owner for S3 offload and avoid overlapping Fluent Forms upload logic.
No. FileBird organizes Media Library attachments, while Kybern S3 Storage controls the remote S3 object key structure for matched uploads.
Yes, if you want FileBird assignment and consistent Media Library offload behavior.
Yes. Enable signed URLs and set the expiration window that best fits your caching and access needs.
Yes. Since version 2.1.2, when signed URLs are enabled, Kybern S3 Storage keeps the original /wp-content/uploads/... link stable and generates a fresh signed S3 URL only when the link is opened. This prevents old emails, circular links and cached pages from retaining an expired 15-minute S3 URL while the bucket remains private.
For direct public S3 URLs, prefer a bucket name without dots, such as my-site-media. AWS documents SSL limitations for virtual-hosted bucket names that contain periods.
Yes. Enable CloudFront delivery and enter the distribution or custom CDN base URL to serve public files without exposing direct S3 URLs.
Yes. The plugin can export and import settings as JSON. AWS access keys, secret keys, and session tokens are never included, so configure credentials separately on the destination site.
Yes, but it is safer to leave local copies enabled until you have confirmed your S3 URLs, permissions, and backups.
Set the comma-separated Circulars FileBird Folder IDs in the Transfer Fluent Forms to FileBird Folders Workflow section. When a new, not-yet-offloaded attachment is assigned to one of those folders, Kybern stores its main file and generated sizes under the configured root prefix followed by circolari/[year]/. The attachment ID is included in the object name to prevent files with the same filename from overwriting one another.
This route does not automatically change historical S3 objects or saved mappings. Historical Circulars are changed only when an administrator explicitly starts the controlled reorganisation workflow described below.
The importer is disabled by default. When enabled, it inspects only the configured incoming prefix below the plugin Root Prefix, which defaults to circolari/incoming/. It accepts only files stored directly in a four-digit year folder whose filename begins with Circolare and ends in .pdf, for example circolari/incoming/2026/Circolare-N.01-2026.pdf.
Every five minutes it verifies the source object, downloads it temporarily to confirm the PDF signature and size, creates the WordPress Media Library attachment, assigns the configured CIRCOLARI 2026 FileBird folder, copies and verifies the final object at circolari/2026/[attachment-id]-[filename], saves the WordPress mapping, and then deletes both the local temporary copy and the incoming S3 object. Existing circolari/[year]/ archive objects are never listed or changed. A saved incoming-source reference prevents duplicate attachments if a cleanup retry is needed.
For the KybernAI platform, enable KybernAI Direct Circular Import instead of the incoming importer. After KybernAI has uploaded a PDF to its final S3 location under circolari/[year]/, it sends the exact object key to the authenticated WordPress endpoint. The plugin verifies that the key belongs to the configured Circulars archive, confirms the PDF signature and size, creates the Media Library attachment, assigns the configured CIRCOLARI YYYY FileBird folder, and maps that same S3 object to the permanent WordPress upload URL.
The direct integration never lists the archive, moves objects, creates a second final object, or deletes the original S3 PDF. A saved source key makes repeated KybernAI notifications idempotent.
Use the two-step guide in the Circulars S3 Reorganisation panel. In Step 1, select the Circulars year and click Preview Eligible PDFs. The preview does not move files or change WordPress mappings. Wait for its confirmation, then verify the year and totals shown in Latest Preview before continuing.
In Step 2, select the same verified year, choose the batch size, and click Start or Resume Circulars Reorganisation. The plugin refreshes the preview and builds a durable queue containing only mismatched attachments; already organised files are not processed again. Follow the live progress bar while WordPress processes that pending-only queue. The run is finished when its status is Completed and progress reaches 100%. Use Retry Failed Circulars only if failed IDs remain after the main run.
The selected CIRCOLARI YYYY FileBird folder is the authoritative year: this supports documents imported after their publication year. The worker selects only attachments that are PDFs, assigned to that configured Circulars FileBird folder, and whose stored filename begins with Circolare, or whose attachment title begins with Circolare when a legacy CIRC... filename was retained.
For every pending attachment, the worker copies each mapped S3 object to circolari/[year]/[attachment-id]-[filename], verifies the copied object size, updates the WordPress mapping, and only then removes the previous S3 object. It runs in resumable background batches using the pending-only queue built during preview, with stop and retry controls. Attachments without a stored S3 mapping are reported but left unchanged.
The administrator-only delivery audit checks every attachment marked as offloaded and every S3 object saved in its WordPress mapping. It uses S3 metadata requests only, so it does not download media or modify WordPress, local uploads, or S3. A failed check remains queued for a controlled retry and is not repaired automatically. Use it after a bulk operation, changing S3 credentials or paths, or when diagnosing a missing file.
circolari/[year]/ S3 key before offload.CIRCOLARI YYYY FileBird folder authoritative for new Circular archive years, with the upload year retained as a fallback.circolari/[year]/ S3 archive.circolari/incoming/[year]/ prefix.Circolare*.pdf files, a configured FileBird Circulars year folder, a 50 MB limit, and a PDF signature check.CIRC... names but whose attachment titles begin with Circolare.Circolare.