Migrate Select Fields to New Data File Sections
If you’re using Data Files as a source for your Select Fields there is an additional step to migrate successfully to the new handling of Data Files.
To update your data source with Forestry you can navigate to a relevant Front Matter Template in your Front Matter Settings and click on the next to the Select Field.
At the bottom of the Field Editor you now have to set your Source Type to Document Fields.
Unexpected Status Code / Connection Expected but not Available
This error typically occurs when there is a problem with your authentication token. This token tells your source provider (GitHub, GitLab, or Bitbucket) that Forestry is allowed to push/pull changes to/from your repository.
When this token is not working correctly, Forestry is unable to persist any of your changes back to your repo. As well, any changes to your repo outside of Forestry cannot imported.
Refreshing Your Auth Token To re-authenticate with your source provider, navigate to the Settings section in Forestry and click on the Repository tab.
GitLab SSH error
If you are getting an error when authenticating with GitLab that looks like this:
Failed to authenticate SSH session: Waiting for USERAUTH response 1. Go to https://app.forestry.io/sites/SITE-ID/disconnect/gitlab
(where SITE-ID is the unique string in the URL when you visit your Forestry CMS). This will disconnect your account from GitLab.
2. Go to https://gitlab.com/profile/keys and delete the Forestry.io key.
3. Go to https://gitlab.com/profile/applications and revoke the Forestry.io app access.
4. Go to https://app.
Could not locate Gemfile or .bundle/ directory
When I view an error log from Forestry I see: Could not locate Gemfile or .bundle/ directory What this error means Gemfiles include a list of project dependencies and where to find them. Bundler is a dependency manager for the Ruby programming language that can read Gemfiles, resolve the dependency graph and install those gems. Jekyll is a ruby application and can use Bundler to manage your project dependencies. Forestry requires that your Jekyll projects contain a Gemfile at the root of the repository.
Using a Git Submodule for Your Theme
If you have a repository for your Jekyll or Hugo project and you want use a different repository for your theme, you should set up your theme repo as a Git Submodule.
To add a theme as a Git Submodule, run the following command from the root of your project:
git submodule add https://github.com/spf13/hyde.git themes/hyde Be sure to add the correct URL to your theme repo and the correct path to where you want this repo to live within your project.
Can't publish, preview, or save
When publishing, previewing, or saving a draft, there are a multitude of reasons why your site may fail to import. Generally, they boil down to 3 reasons:
Your content files are improperly formatted. Your layout files are improperly formatted or have a build error. Our service messed up. Our bad. We output the error the caused the import to fail and allow you to view it in order to help you debug.
How do I add a CNAME to my site?
For some hosting providers (such as GitHub pages) you will need to place a CNAME file in the root of your site.
You’ll need to ensure that the CNAME file is treated as a static file, so that it is copied to the root of your site during the build.
Make sure you place your CNAME file in your source directory, not your build directory. Otherwise it will be deleted during the next build
CSS, JS, & Media not working
Sometimes you’ll find your assets aren’t loading when you preview or publish your site. This is almost always due to path issues.
The best way to solve this issue is to ensure you’re always allowing your SSG (Static Site Generator) to generate URLs.
For example, we have a CSS file named main.css that isn’t loading when viewing subpages.
In the dev environment, we’re serving the site from localhost:4000, meaning that main.