{"id":21700144,"url":"https://github.com/wp-digital/wp-project-skeleton","last_synced_at":"2025-04-12T13:34:02.479Z","repository":{"id":47351254,"uuid":"215305065","full_name":"wp-digital/wp-project-skeleton","owner":"wp-digital","description":null,"archived":false,"fork":false,"pushed_at":"2023-08-31T19:52:40.000Z","size":268,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":13,"default_branch":"main","last_synced_at":"2025-04-05T01:32:52.912Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wp-digital.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-10-15T13:24:39.000Z","updated_at":"2023-08-09T12:32:26.000Z","dependencies_parsed_at":"2023-01-22T01:45:12.297Z","dependency_job_id":null,"html_url":"https://github.com/wp-digital/wp-project-skeleton","commit_stats":null,"previous_names":[],"tags_count":50,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wp-digital%2Fwp-project-skeleton","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wp-digital%2Fwp-project-skeleton/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wp-digital%2Fwp-project-skeleton/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wp-digital%2Fwp-project-skeleton/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wp-digital","download_url":"https://codeload.github.com/wp-digital/wp-project-skeleton/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248573438,"owners_count":21126829,"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":[],"created_at":"2024-11-25T20:13:01.079Z","updated_at":"2025-04-12T13:34:02.459Z","avatar_url":"https://github.com/wp-digital.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WordPress Project Skeleton\n\n### Description\n\n[SMFB Dinamo](https://www.smfb-dinamo.com/) starter code for a WordPress project.\n\n### Install\n\nThere are few possible options to use this skeleton:\n\n- Create new project with [Composer](https://getcomposer.org/):\n  ```\n  composer create-project wp-digital/wp-project-skeleton\n  ```\n\n- Create new project on [GitHub](https://github.com/) from\n  [this template](https://github.com/wp-digital/wp-project-skeleton).\n\n- Alternative way is to clone this repo:\n  ```\n  git clone git@github.com:wp-digital/wp-project-skeleton.git \u003cname\u003e\n  ```\n\nFind `@TODO: ...` in code and replace with needed settings.\n\n### Documentation\n\n#### Install plugins, mu-plugins, PHP packages\n\nManage dependencies with Composer. To install e.g. plugins use:\n\n```\ncomposer require innocode-digital/wp-hybrid-lazy-loading\ncomposer require wpackagist-plugin/wp-crontrol\n```\n\n#### Update WordPress core, plugins, mu-plugins, PHP packages\n\nAll updates should be done through Composer. To update e.g.\nWordPress core use:\n\n```\ncomposer update johnpbloch/wordpress\n```\n\nTo update all dependencies (core, plugins, PHP packages):\n\n```\ncomposer update\n```\n\nNormally project should be initialized with new `.env` file after `create-project` command\nbut if it was not created or other method was used to create project\nthen it's possible to initialize `.env` with next command:\n\n```\ncomposer run-script wp-init\n```\n\nIf you want to install some theme as dependency then remember\nto add it to `.gitignore`.\n\n#### Cron\n\nBy default, WordPress cron is disabled, but it's possible to enable it through environment variable:\n\n````\nUSE_WP_CRON=true\n````\n\nThere is a possibility to use server-side cron. It's needed to do next steps to make it run:\n\n1. Make [script](./bin/run-wp-cron) executable: `chmod +x ./bin/run-wp-cron`\n2. Test script: `./bin/run-wp-cron`\n3. Set server-side cron e.g. with per each 5 minutes: `*/5 * * * * /path/to/bin/run-wp-cron`\n\n### Caveats\n\n**Install premium extensions from metabox.io**\n\nSee documentation [metabox.io](https://docs.metabox.io/extensions/composer/) on how to do it in general.\nKeep in mind that storing of the API Key in project `composer.json` is not a good idea, since\nit could be situation that project will be taken by someone else, so the API Key may be accidentally\nshared. To add private source to `repositories`, you can add it in global config with the following command\n`composer config repositories.metabox\\.io composer https://packages.metabox.io/\u003cAPI Key\u003e --global` or edit\n`$HOME/.composer/config.json` manually:\n\n```\n{\n    \"config\": {},\n    \"repositories\": {\n        \"metabox.io\": {\n            \"type\": \"composer\",\n            \"url\": \"https://packages.metabox.io/\u003cAPI Key\u003e\"\n        }\n    }\n}\n```\n\nThen it should be possible to add extensions to project:\n\n```\ncomposer require meta-box/meta-box-group:dev-master\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwp-digital%2Fwp-project-skeleton","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwp-digital%2Fwp-project-skeleton","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwp-digital%2Fwp-project-skeleton/lists"}