Engage is a Timber-powered WordPress theme for The Center for Media Engagement at the University of Texas at Austin.
Note: This repo includes the entire WordPress installation. However, the only directory you should work on is
wp-content/themes/engage-2-x
. Avoid making changes to other files as they are tied to live sites.
- Install WP Engine Local App.
- Connect with the CME WP Engine account.
- Download
mediaengagement.org
from Local App. - Clone this GitHub repo and fetch.
- Install npm dependencies.
- Start development.
For full installation instructions, refer to the development guide.
Engage 2.x is forked from the Timber Starter Theme. You can follow the Timber Composer installation guide for additional setup details.
-
Clone the repo and navigate to the theme directory:
cd yourSiteName/app/public/wp-content/themes/engage-2-x
-
Check if you're using the correct Node version:
npm doctor
-
Install npm dependencies:
npm install
-
Install Timber via Composer:
composer require timber/timber
-
Activate the
engage-2-x
theme from WP Admin → Appearance. -
Run the development server:
npm run watch
or
yarn watch
-
Before pushing changes, compile assets for production:
npm run production
or
yarn production
If you encounter issues with the Engage theme:
-
Check the Local App setup:
- Switch the web server to nginx.
- Ensure PHP version is 8.2.10 or higher.
-
Switch to a default theme:
- Rename the
engage
theme folder to force WordPress to switch to a default theme. - Disable all plugins except for ACF.
- Rename the theme back and reactivate it in WP Admin.
- Rename the
-
Install Timber Dump Extension (if needed):
composer require hellonico/timber-dump-extension
-
Deactivate the Engaging Quiz Plugin: It is known to cause issues.
-
Notify Kat before pushing updates to the live site.
-
Compile production assets:
npm run production
-
Push changes to the development site:
git push dev master
-
Merge
master
intostable
:git checkout stable && git merge master
-
Tag and push to staging:
git tag -a 2.2.8 -m "message" && git push origin stable --tags && git push staging stable
-
Notify Kat before pushing to the live site.
-
Push to the live site:
git push production stable
ACF field groups are automatically synced across environments via JSON files in the acf-json
directory.
- Field group changes are automatically saved as JSON in
acf-json
when updated in WP Admin. - Pull changes from the repo to sync ACF fields on your local environment.
- Commit and push any changes after updating field groups to share them with the team.
- The ACF admin is hidden on production and non-local environments by checking
WP_ENVIRONMENT_TYPE
. It is only visible in local environments.