{"id":15022238,"url":"https://github.com/seravo/wordpress","last_synced_at":"2025-04-04T09:08:11.428Z","repository":{"id":28097091,"uuid":"31595209","full_name":"Seravo/wordpress","owner":"Seravo","description":"The WordPress project layout used by many of Seravo's customers, suitable also for local development with Vagrant and git deployment","archived":false,"fork":false,"pushed_at":"2025-03-26T07:16:02.000Z","size":489,"stargazers_count":105,"open_issues_count":36,"forks_count":53,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-04-03T00:30:54.783Z","etag":null,"topics":["composer","php","seravo","vagrant","virtualbox","wordpress"],"latest_commit_sha":null,"homepage":"https://seravo.com","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Seravo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2015-03-03T11:33:49.000Z","updated_at":"2025-03-26T07:15:57.000Z","dependencies_parsed_at":"2023-12-15T20:09:33.095Z","dependency_job_id":"98f93003-f287-4735-bda9-bbcff11b0098","html_url":"https://github.com/Seravo/wordpress","commit_stats":{"total_commits":341,"total_committers":30,"mean_commits":"11.366666666666667","dds":0.6656891495601174,"last_synced_commit":"66cba61ef321a84f94a18e61d5188558b0299a97"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Seravo%2Fwordpress","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Seravo%2Fwordpress/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Seravo%2Fwordpress/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Seravo%2Fwordpress/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Seravo","download_url":"https://codeload.github.com/Seravo/wordpress/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247149501,"owners_count":20891954,"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":["composer","php","seravo","vagrant","virtualbox","wordpress"],"created_at":"2024-09-24T19:57:40.989Z","updated_at":"2025-04-04T09:08:11.399Z","avatar_url":"https://github.com/Seravo.png","language":"PHP","readme":"![Seravo.com](https://seravo.com/wp-content/themes/seravo/images/seravo-banner-808x300.png)\n\n# Seravo WordPress project template\n\nBrought to you by [Seravo.com](https://seravo.com).\n\nA WordPress project layout for use with Git, Composer and Nginx. It also\nincludes a config a Vagrant box and Docker image for local development.\n\nThis same project layout is used by default on all\n[Seravo.com](https://seravo.com) instances for easy deployment workflow.\nContents of this repository equals to what you would have on the server in the\ndirectory `/data/wordpress/`.\n\n\n## Documentation\n\nPlease see our documentation at https://seravo.com/docs/ on general information\nabout git workflow with this project template.\n\n\n## Installation\n\n\u003e Please see our documentation at\n\u003e https://seravo.com/docs/development/how-to-install/ on how to install Vagrant\n\u003e and its dependencies.\n\n\n## Features\n\n* Includes Nginx, MariaDB, PHP7, PHP8, Redis and Git for running WordPress in\n  modern stack.\n* Git hooks to test your code to make sure that only high quality code is\n  committed into git\n* Advanced WordPress acceptance tests with Codeception and headless Chrome\n* [PHP Codesniffer](https://github.com/squizlabs/PHP_CodeSniffer) code style\n  and quality analyzer\n* Includes self-signed certs (and trust them automatically in OS X) to test\n  https:// locally\n* [Xdebug](http://xdebug.org/) and\n  [Webgrind](https://code.google.com/p/webgrind/) for debugging and profiling\n  your application\n* [Mailcatcher](http://mailcatcher.me/) to imitate as SMTP server to debug\n  mails\n* [Adminer](http://www.adminer.org/) for a graphical interface to manage your\n  database\n* [BrowserSync](http://browsersync.io) as automatic testing middleware for\n  WordPress\n\n\n### Credentials for vagrant\n\nWordPress:\n\n```\nuser:     vagrant\npassword: vagrant\n```\n\nMariaDB (MySQL):\n\n```\nuser:     root\npassword: root\n```\n\n\n## Development\n\nThe layout of this repo is designed in a way which allows storing the site in\nversion control without exposing any confidential data. By default all\nsensitive data is ignored by git.\n\nAll plugins are handled by Composer so they are ignored by git. If you create\ncustom plugins, force add them to git so that they are tracked or add new lines\ninto `.gitignore` to not ignore.\n\nExample of not ignore line in `.gitignore`:\n\n    !htdocs/wp-content/plugins/your-plugin/\n\nIf you create custom themes, they are automatically tracked in git.\n\nBest way to develop custom plugins and themes is to add them into their own\nrepositories and install them by composer.  You can do this by adding\n`composer.json` for your plugin/theme and then requiring them in your project\nlike:\n\n```json\n\"repositories\": [\n  {\n      \"type\": \"vcs\",\n      \"url\": \"https://github.com/your-name/custom-plugin.git\"\n  }\n],\n\"require\": {\n    \"your-name/custom-plugin\": \"*\"\n}\n```\n\n\n## Updates\n\nVagrant will let you know as soon as a new version of the Vagrant box is\navailable. However, site environment will not be updated automatically to newer\none.\n\nTo download and update your Vagrant box to use the newest image run:\n\n    vagrant box update\n    vagrant destroy\n    vagrant up\n\n\n## Configuration\n\n### config.yml\n\nChange `name` in config.yml to change your site name. This is used in quite\nsome places in development environment.\n\nAdd `production =\u003e domain` and `production =\u003e ssh_port` to sync with your\nproduction instance.\n\nAdd new domains under `development =\u003e domains` before first vagrant up to have\nextra domains.\n\nSee `config-sample.yml` for more.\n\n\n## The Layout\n\nThe root of this repository equals the contents of the directory\n`/data/wordpress` in the Seravo.com instance.\n\n```\n├── config.yml # Project name, domains and other configuration\n├── composer.json # Composer definition, used to pull in WordPress and plugins\n├── composer.lock # Composer lock file. This is safe to delete and ignore as detailed dependency control is not relevant in WordPress.\n├── gulpfile.js # Gulp example with correct paths\n├── Vagrantfile # Vagrantfile for Seravo/WordPress Vagrant box\n│\n├── nginx # Custom modifications to Nginx which are also used in production\n│   └── examples.conf # Some examples to get started\n│   └── anything.conf # Your own config files can be named anything *.conf\n│\n├── scripts\n│   ├── hooks # Git hooks for your project\n│   │   ├── pre-commit # Run after every git commit\n│   │   └── post-receive # Run after every git pull/push\n│   │\n│   ├── WordPress\n│   │   └── Installer.php # Composer helper for WordPress installation\n│   │\n│   └── run-tests # Bash script as an interface for your tests in Seravo's production and development environments\n│\n├── vendor # Composer packages go here\n└── htdocs # The web root of your site\n    ├── wp-content # Directory moved out of WordPress core for git compatibility\n    │   ├── mu-plugins\n    │   ├── plugins\n    │   ├── themes\n    │   └── languages\n    ├── wp-config.php\n    ├── wp-load.php\n    ├── index.php\n    └── wordpress # WordPress core\n        ├── wp-admin\n        ├── index.php\n        └── ...\n```\n\n## Credits\n\n* Directory layout heavily inspired by\n  [roots/bedrock](https://github.com/roots/bedrock)\n* Development stack inspired by\n  [VVV](https://github.com/Varying-Vagrant-Vagrants/VVV)\n\nCopyright Seravo Oy, 2015–2023 and contributors. Available under the GPLv3\nlicense.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseravo%2Fwordpress","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fseravo%2Fwordpress","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseravo%2Fwordpress/lists"}