=== Culacc ===
Contributors: culacc
Tags: backup, cloud backup, database, media, storage
Requires at least: 6.2
Tested up to: 7.1
Requires PHP: 7.2
Stable tag: 1.3.5
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Backs your site up to your own Culacc account — files, themes, plugins and the database — keeping a version of anything that changes.

== Description ==

Most hosts keep your backups on the same server as your site. If that server is hacked, fails, or your hosting account closes, the backups go with it.

Culacc keeps an off-site copy of your whole site — the database, media library, themes and plugins — in your Culacc account, stored in the EU, with every version of every file. And it brings your Culacc files into wp-admin, so you can use them on the site.

**Why site owners choose Culacc**

* **Off-site, in the EU.** Your backups live away from your hosting, in European data centres.
* **Every version kept.** A changed file never overwrites the old one, so you can open your logo or a theme file as it was last Tuesday.
* **Only changes are sent.** After the first backup, a twenty-gigabyte media library sends only the few megabytes that changed.
* **Made for shared hosting.** Backups run in small steps and resume where they stopped, so hosts that cut off long-running PHP can't break them.
* **Works behind firewalls.** Your site sends the backup; Culacc never connects to it.
* **Your files, inside WordPress.** On Tools → Culacc, browse your Culacc folders with previews, add any file to the Media Library, or copy a CDN link with ready-made code that sizes pictures for every screen.
* **Your team, your rules.** Administrators decide which roles may see Culacc, start backups or publish links.

**What gets backed up**

* The database, dumped table by table and compressed
* Uploads — your whole media library
* Themes and plugins, including the ones you wrote yourself
* Optionally `wp-config.php`, which makes restoring easier but contains your database password and security keys

**Who it's for**

* Site owners who want a copy of their site that doesn't depend on their host.
* Agencies and freelancers looking after many sites: connect each client site to one Culacc account and see them all in one place.
* Teams that keep brand files in Culacc and want them in WordPress without downloading and re-uploading.

**What it never does**

Culacc doesn't change your site on its own: a file is added to your Media Library only when someone with permission chooses to. It sends nothing anywhere except the Culacc account you paired it with, and stores no WordPress passwords — pairing gives the site a token that works only for your account.

**Honest about restoring**

Restoring is manual in this version: download what you need from Culacc and put it back. A one-click restore isn't here yet.

**Requires a Culacc account**, which includes 5 GB of storage free — [create one at culacc.com](https://culacc.com/?utm_source=wordpress.org&utm_medium=plugin-listing&utm_campaign=wordpress).

== Installation ==

1. In Culacc, open Settings → WordPress and press "Get a pairing code".
2. Install this plugin: in WordPress, Plugins → Add New Plugin, search for "Culacc", then Install Now and Activate.
3. Go to Tools → Culacc and paste the pairing code.

The first backup starts within a few minutes and shows its progress on that screen.

== Frequently Asked Questions ==

= Is it free? =

The plugin is free. Backups are stored in your Culacc account, which includes 5 GB of storage free; more storage can be bought in Culacc's settings.

= Where are my backups stored? =

In your Culacc account, in data centres in the EU — not on your hosting.

= Does it work on shared hosting? =

Yes. Backups run in short steps and pick up where they stopped, so a host that limits how long PHP may run slows a backup down instead of breaking it.

= Can I back up several sites? =

Yes. Pair each site with the same Culacc account, and Settings → WordPress on culacc.com shows them all, with each one's last backup.

= Who on my team can use it? =

Administrators can always. On Tools → Culacc they choose which other roles may see Culacc, start backups, or publish CDN links.

= Can I use my Culacc files in posts and pages? =

Yes. On Tools → Culacc, open a folder and choose Add to Media Library, or Copy CDN link — a pop-up shows the code and exactly where to paste it.

= Do I need to open my site to the internet? =

No. Your site sends to Culacc; Culacc never connects back. Nothing needs to be opened, forwarded or exposed.

= Nothing happens on a quiet site =

WordPress only runs scheduled jobs when somebody visits, so a site with little traffic backs up late. On the settings screen there is a cron line you can add to your host — five minutes apart is plenty.

= Is my database password sent anywhere? =

Only if you tick "wp-config.php", which is off unless you turn it on. That file holds your database password and security keys; including it makes a restore much easier, and it means those secrets sit in your Culacc account.

= I imported hundreds of files at once. When are they backed up? =

Within a couple of minutes. Single edits are sent one at a time as they happen; past a hundred at once the plugin stops doing that and runs an ordinary backup instead, which is quicker for a batch. Nothing waits for the night.

= Can I send files the other way? =

Yes. In Culacc, open a file and choose "Add to media library". Your site collects it on its next check-in — usually within five minutes — and it appears in Media like any other upload.

= What happens if I delete a file on my site? =

It stays in the backup, marked as deleted on the site. That is the point of having one.

= How do I restore? =

Download the files from Culacc and put them back. A one-press restore is not in this version.

== External services ==

This plugin is the WordPress side of Culacc (https://culacc.com), a cloud storage and backup service, and needs a Culacc account. It only talks to Culacc, and only once you have connected the site with a pairing code from your Culacc account.

What it sends to Culacc, and when:

* When you connect the site: the site's address and name, the WordPress, PHP and plugin versions, and the username, display name and email address of the administrator who entered the pairing code — so the account owner can see who connected it.
* On every backup — on the schedule you choose, when you press "Back up now", and shortly after media files are added or changed: the files you chose to back up (uploads, themes, plugins, and optionally wp-config.php) and, if chosen, an export of the database.
* Every five minutes while connected: a short status check carrying the WordPress, PHP and plugin versions, so Culacc can show whether the site is reachable.
* When someone with permission uses the Files panel on Tools → Culacc: requests to list, preview, download or publish files stored in Culacc. Previews and downloads are then loaded by that person's browser directly from culacc.com.

Nothing is sent before the site is connected, and nothing is sent after it is disconnected.

Culacc terms of service: https://culacc.com/terms
Culacc privacy policy: https://culacc.com/privacy

== Screenshots ==

1. Tools → Culacc: when the site was last backed up, what it holds, and Back up now.
2. Files: this site's backups and the folders shared with it, with previews — Download, Add to Media Library or Copy CDN link on any file.
3. Copy CDN link: the address and the code to paste, with steps for each place in WordPress.
4. Who can use Culacc on this site: administrators decide which roles may see Culacc, start backups or publish links.

== Changelog ==

= 1.3.5 =
* After a few finished backups, Culacc asks once — on its own page only — whether you'd leave a review. "Maybe later" asks again in 30 days; "Don't ask again" is final.
* A clearer description of what Culacc does, including the Files panel.

= 1.3.4 =
* Security: during a database backup, the part-written dump now sits in a folder named with a random key only the site knows. Before, its address was fixed and protected only by an .htaccess file, which nginx ignores — so on nginx hosts it could be downloaded during a backup by anyone who knew the address. Leftovers in the old folder are removed. Please update.
* Culacc's working folder is always left out of file backups, whatever the skip list says.
* Database export names tables through WordPress's own placeholder, which needs WordPress 6.2 or newer.

= 1.3.3 =
* Ready for the WordPress.org plugin directory: the Files panel's styles and script load as proper assets, only on Tools → Culacc; the readme describes exactly what is sent to Culacc and when; uninstalling cleans up through WordPress's own file functions.

= 1.3.2 =
* "How to use CDN links" on the Culacc page opens the full guide: every size and format option, responsive pictures, video posters, where to paste a link in WordPress, and what to do when something doesn't show.

= 1.3.1 =
* Copy CDN link opens a pop-up showing exactly where to paste it — the Image, Video or Audio block, a Custom HTML block, the classic editor or a widget — with steps fitted to the kind of file.

= 1.3.0 =
* Files on the Culacc page: this site's backups, plus folders the Culacc account's owner shares with it — with previews, Download and Add to Media Library.
* Copy CDN link: publishes a file for this site's address, if the Culacc owner allows it and your role has "Publish links".
* Culacc's refusals reach the page as refusals, not as connection errors.

= 1.2.0 =
* Who may use Culacc is now set per role, on the Culacc page: administrators can let other roles see it, or also start backups. Connecting, settings and disconnecting stay with administrators.
* Pairing tells Culacc which administrator connected the site.

= 1.1.0 =
* Files sent from the Culacc dashboard now arrive in this site's media library.

= 1.0.0 =
* First release: database, uploads, themes and plugins, sent in pieces and resumable.

== Upgrade Notice ==

= 1.3.4 =
Security fix: on nginx hosts, a database dump in progress could be downloaded from a fixed address. Update now.