{"id":17144174,"url":"https://github.com/harryfinn/wordpress-skeleton","last_synced_at":"2026-04-09T09:39:15.471Z","repository":{"id":139564489,"uuid":"79906515","full_name":"harryfinn/wordpress-skeleton","owner":"harryfinn","description":"WordPress Starter Framework","archived":false,"fork":false,"pushed_at":"2018-01-02T16:15:38.000Z","size":103,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-29T15:35:27.112Z","etag":null,"topics":["brunch","jsx","php","scss","wordpress","wordpress-theme","wordpress-theme-framework","yarn"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/harryfinn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-01-24T11:42:29.000Z","updated_at":"2017-06-13T08:52:05.000Z","dependencies_parsed_at":null,"dependency_job_id":"0d5557ff-2acd-40d8-9619-957a7ae05a4e","html_url":"https://github.com/harryfinn/wordpress-skeleton","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harryfinn%2Fwordpress-skeleton","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harryfinn%2Fwordpress-skeleton/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harryfinn%2Fwordpress-skeleton/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harryfinn%2Fwordpress-skeleton/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/harryfinn","download_url":"https://codeload.github.com/harryfinn/wordpress-skeleton/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245249230,"owners_count":20584497,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["brunch","jsx","php","scss","wordpress","wordpress-theme","wordpress-theme-framework","yarn"],"created_at":"2024-10-14T20:43:16.137Z","updated_at":"2025-12-30T23:27:51.279Z","avatar_url":"https://github.com/harryfinn.png","language":"PHP","readme":"# Skeleton WordPress Theme\n\nThis repository contains a skeleton WordPress theme powered by brunch.\nIt uses yarn to compile and process packages and assets.\n\n## Prerequisites\n\nBefore you clone this repository, please ensure the following have been\ninstalled (first-time setup only). Please also ensure that you have `php`\ninstalled (`php -v`), version `7.1.x` or higher. We are also using Yarn\nto manage our project dependencies, however, you can still use `npm`\ncommands if you are unsure of the matching `yarn` command. Checkout the\nYarn docs here = [https://yarnpkg.com/en/docs/cli/](https://yarnpkg.com/en/docs/cli/)\n\n```TXT\nbrew install mysql\nbrew install node\nbrew install yarn\n```\n\nIf you do not have a version of `php` installed or is below version `7.1.x`,\nplease upgrade it. `php 7` is recommended due to the performance improvements,\nview an upgrade guide [here](https://developerjack.com/blog/2015/12/11/Installing-PHP7-with-homebrew/)\n\n### Installing WP-CLI\n\nThe WordPress installation and general development is made easier through the\nuse of WP-CLI tool. Follow the commands below to install it prior to setting\nup the project.\n\n```TXT\ncurl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar\nchmod +x wp-cli.phar\nsudo mv wp-cli.phar /usr/local/bin/wp\n```\n\nFinally, to check the WP-CLI is running correctly, run `wp --info` which should\npresent you with the current PHP \u0026 WP-CLI versions installed if successful.\n\n## To create a new WordPress project:\n\n```TXT\nmkdir your-wordpress-folder \u0026\u0026 cd your-wordpress-folder\nwp core download --locale=en_GB\n```\n\n## Clone this repo into a new theme in your WordPress folder:\n\n```TXT\ncd wp-content/themes \u0026\u0026 rm -rf twenty*\nmkdir your-theme \u0026\u0026 cd your-theme\ngit clone git@github.com:harryfinn/wordpress-skeleton.git .\nyarn\n```\n\nNote: the `rm -rf twenty*` simply removes the default WordPress themes as they\nare not required. The `yarn` command installs all the dependancies for this\nskeleton.\n\nYou can now branch from master to make changes in this framework repo or follow\nthe instructions below to create a new theme with this framework as the base.\n\n## Starting your new themes\n\nTo create a new WordPress theme repo from this skeleton run the following\ncommand to delete the current git files. `rm -rf .git`\n\nYou can now create your new WordPress theme repository, following the repository\nsetup instructions on github.\n\nOnce setup please ensure you amend the values in the `includes/constants.php`\nfile to suit your theme, i.e. `_theme_cmb2_` would contain the name of the theme\nas the prefix, rather than `_theme_cmb2` you could use `_my-site_cmb2_` etc.\n\n## Install/Update CMB2 within project\n\nThis project uses the [CMB2](https://github.com/CMB2/CMB2) library\nto help generate and manage custom metaboxes within the WP admin. It is\nincluded within the framework repo as a submodule.\n\nHowever, when running the `rm -rf .git` command, this submodule link will be\nremoved and the ability to update CMB2 via submodule commands will be lost. To\nwork around this and enable CMB2 in your new theme run the following commands:\n\n```TXT\ncd includes/\ngit submodule add git@github.com:CMB2/CMB2.git\nyarn git-update\n```\n\nThe commands about will swap you into the includes folder within the theme and\nthen create a submodule link for this new theme project before activating the\nsubmodule and pulling down the files.\n\nIt is important to remember that these files are not committed to the repo, only\nthe submodule link to the CMB2 project, which helps to reduce overall file size\nand 'weight' in your repo. It also means that you can update your new theme repo\nwith updates from CMB2 without having to update via this skeleton repo.\n\n## Running the project\n\nTo start the mysql server use `mysql.server start` and `mysql.server stop`\nto stop. The default settings for a mysql connection are:\n\n```TXT\nhost: 127.0.0.1\nuser: root\npassword: (empty)\nport: 3306\n```\n\nUse the mysql settings to make a new database for the project and complete the\nWordPress install at `http://localhost:8080`.\n\nThere are several commands available within this repo which are run as yarn\nscripts (recommend running in separate tabs in order to monitor output):\n\n-   `yarn server` - will start the PHP built-in web server allowing for\naccess to the site via `http://localhost:8080`\n\n-   `yarn watch` - will start the Brunch watcher task, compiling `scss`,\n`js` and asset management\n\n-   `yarn build` - will compile a production (live) ready version of\nstylesheets, javascripts and assets, therefore only required when deploying\nto a live environment\n\n-   `yarn git-update` - will update any submodules associated with the\nproject\n\n-   `yarn pre-deploy` - will run the `git-update` command and then\ncompile package dependencies before calling the `build` command\n\n-   `yarn deploy` - will pull down the latest changes from the develop\nbranch (by default) then run the `pre-deploy` command\n\n-   `yarn deploy:production` - will pull down the latest changes from\nthe master branch then run the `pre-deploy` command - for Live/Production\n\n-   `yarn caniuse` - will check the compiled `app.css` file against the\n`CanIUse` API - For informational purposes only\n\nWhen adding node packages (via [Yarn](https://yarnpkg.com/en/) to this repo,\nthe `--dev` option should be used for any packages that are required to run\nthe development environment, prior to the build/compilation of the app.\n\nOtherwise, if a package affects the way in which the code is written, it\nshould sit under the `dependencies` section. For example, the\n`auto-reload-brunch` offers local reloading of pages to show instant styling\nand js changes, which would not be suitable for a live server environment,\ntherefore should have the `--dev` flag used to add it.\n\n## Testing\n\nThe server will allow for devices connected on the same wifi to access the\nsite. On your device go to the IP address + `xip.io:8080`.\nTo find your IP address hold `ALT` and click on the wifi icon in your toolbar.\n\nTo ensure local assets are correctly parsed when testing locally, ensure the\n`BRUNCH_LOCAL_ASSETS` constant is set to true.\n\n## Additional Skeleton file notes\n\nThere are several files within this skeleton which contain examples of\nfunctionality for your WordPress theme.\n\nFor example:\n-   `includes/class.custom-post-types.php` - Handles registering and\nconfiguration of Custom Post Types (CPT's).\n-   `includes/class.theme-admin.php` - Sets up a basic 'Theme Options' screen\nwithin the admin dashboard.\n-   `includes/custom-metaboxes/cmb2-post-fields.php` - An example CMB2 fields\nfile.\n-   `app/javascripts/web-font-loader.js` - The Google webfont loader script,\nalso compatible with various other web font providers (i.e. typekit) along with\ncustom font support and FOUT remover.\n-   `THEME_README.md` - An example README to replace this README file when using\nthis skeleton as the starter framework for a new theme.\n\nWhen viewing these files please note additional instructions in the comments.\n\nA basic set of common styles has been included in this skeleton to be built\nupon.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharryfinn%2Fwordpress-skeleton","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fharryfinn%2Fwordpress-skeleton","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharryfinn%2Fwordpress-skeleton/lists"}