# How is Local creating the site export zip file?

**URL:** <https://community.localwp.com/t/how-is-local-creating-the-site-export-zip-file/3292>\
**Category:** Uncategorized\
**Created:** [October 18, 2017, 7:54am UTC](https://community.localwp.com/t/how-is-local-creating-the-site-export-zip-file/3292 "2017-10-18T07:54:12Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![igorb](https://avatars.discourse-cdn.com/v4/letter/i/a9adbd/32.png) [@igorb](https://community.localwp.com/u/igorb)\
**Post date:** [October 18, 2017, 7:54am UTC](https://community.localwp.com/t/how-is-local-creating-the-site-export-zip-file/3292/1 "2017-10-18T07:54:12Z")

</div>

I searched the forum, but seems the export zip structure explanations is outdated.

I’m trying to create a git repository of a site, which can be downloaded as zip, and drag-and-dropped to Local to be imported.

This is not a standard WordPress installation, but a [Roots.io](http://Roots.io) Bedrock installation, which has a customized folder structure.

Maybe @clay can point out what I’m doing wrong, so that when the site is imported, it does not detect WordPress and downloads/installs a fresh one over the **/app** folder?

Here’s the repo: [https://github.com/artifex404/local-bedrock](https://github.com/artifex404/local-bedrock)

When I have a manually installed Bedrock installation on Local, and do the export, the import works just fine. But if the export file is unziped, and then re-zipped, the import fails. Is there some magic added to the zip file?

---

<div class="post-metadata">

**Author:** ![clay](https://sea1.discourse-cdn.com/flex019/user_avatar/community.localwp.com/clay/32/8248_2.png) [@clay](https://community.localwp.com/u/clay)\
**Post date:** [October 18, 2017, 3:33pm UTC](https://community.localwp.com/t/how-is-local-creating-the-site-export-zip-file/3292/2 "2017-10-18T15:33:37Z")

</div>

Hey @igorb,

First off, thanks sharing that repo with the community!

When Local zips up a site for export, it puts the `app`, `conf`, `logs`, and `local-site.json` in the root of the zip itself and not inside of a folder. I’ll try to illustrate the difference with screenshots from Finder.

* * *

### This will work

 ![05 AM](https://us1.discourse-cdn.com/flex019/uploads/lwpforums/original/2X/d/dea27f085767a3ac6ac1d3ff578522b14a6e0828.png)

### This won’t. It will be treated as a generic archive

 ![21 AM](https://us1.discourse-cdn.com/flex019/uploads/lwpforums/original/2X/6/6fc8a15d827ed1dba3ea4aa33ebe6e19e7023eca.png)

* * *

With that said, I would like it to be a little more tolerant of Local exports for this exact use case. I’ll make a note of it 🙂

---

<div class="post-metadata">

**Author:** ![igorb](https://avatars.discourse-cdn.com/v4/letter/i/a9adbd/32.png) [@igorb](https://community.localwp.com/u/igorb)\
**Post date:** [October 18, 2017, 6:34pm UTC](https://community.localwp.com/t/how-is-local-creating-the-site-export-zip-file/3292/3 "2017-10-18T18:34:24Z")

</div>

Great!! That did the trick!

The only thing still missing for complete automation, is that Bedrock has a .env file with the domain name of the site.

So while importing the site, if you chose another domain than the initial, it will look broken.

Is there a way to hook into the Local importing process? If only there were a possibility to write your own shell script with some specific name inside a side export, which can be executed upon import inside the docker image. That could open up a lot of possibilities for customizations and automations.
