{"id":18841281,"url":"https://github.com/dmhendricks/wordpress-base-plugin","last_synced_at":"2025-04-14T07:11:39.573Z","repository":{"id":41092649,"uuid":"77474351","full_name":"dmhendricks/wordpress-base-plugin","owner":"dmhendricks","description":"A starter template for WordPress plugins, with autoloading, namespaces and object caching (where available).","archived":false,"fork":false,"pushed_at":"2018-12-28T05:59:36.000Z","size":1222,"stargazers_count":83,"open_issues_count":2,"forks_count":21,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-04-10T12:07:18.385Z","etag":null,"topics":["carbon-fields","multisite","wordpress","wordpress-base-plugin","wordpress-boilerplate","wordpress-network","wordpress-plugin","wordpress-plugin-boilerplate","wordpress-plugin-development"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dmhendricks.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}},"created_at":"2016-12-27T18:16:01.000Z","updated_at":"2024-09-29T01:37:46.000Z","dependencies_parsed_at":"2022-07-30T21:08:07.703Z","dependency_job_id":null,"html_url":"https://github.com/dmhendricks/wordpress-base-plugin","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmhendricks%2Fwordpress-base-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmhendricks%2Fwordpress-base-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmhendricks%2Fwordpress-base-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dmhendricks%2Fwordpress-base-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dmhendricks","download_url":"https://codeload.github.com/dmhendricks/wordpress-base-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248837287,"owners_count":21169374,"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":["carbon-fields","multisite","wordpress","wordpress-base-plugin","wordpress-boilerplate","wordpress-network","wordpress-plugin","wordpress-plugin-boilerplate","wordpress-plugin-development"],"created_at":"2024-11-08T02:50:39.437Z","updated_at":"2025-04-14T07:11:39.527Z","avatar_url":"https://github.com/dmhendricks.png","language":"PHP","readme":"[![Author](https://img.shields.io/badge/author-Daniel%20M.%20Hendricks-lightgrey.svg?colorB=9900cc\u0026style=flat-square)](https://www.danhendricks.com/?utm_source=github.com\u0026utm_medium=campaign\u0026utm_content=button\u0026utm_campaign=wordpress-base-plugin)\n[![Latest Version](https://img.shields.io/github/release/dmhendricks/wordpress-base-plugin.svg?style=flat-square)](https://github.com/dmhendricks/wordpress-base-plugin/releases)\n[![GitHub License](https://img.shields.io/badge/license-GPLv2-yellow.svg?style=flat-square)](https://raw.githubusercontent.com/dmhendricks/wordpress-base-plugin/master/LICENSE)\n[![Flywheel](https://img.shields.io/badge/hosting-Flywheel-green.svg?style=flat-square\u0026label=get%20hosted\u0026colorB=AE2A21)](https://share.getf.ly/e25g6k?utm_source=github.com\u0026utm_medium=campaign\u0026utm_content=button\u0026utm_campaign=dmhendricks%2Fwordpress-base-plugin)\n[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg?style=flat-square)](https://paypal.me/danielhendricks)\n[![Analytics](https://ga-beacon.appspot.com/UA-67333102-2/dmhendricks/wordpress-base-plugin?flat)](https://github.com/igrigorik/ga-beacon/?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=button\u0026utm_campaign=dmhendricks%2Fwordpress-base-plugin)\n[![Twitter](https://img.shields.io/twitter/url/https/github.com/dmhendricks/wordpress-base-plugin.svg?style=social)](https://twitter.com/danielhendricks)\n\n# WordPress Base Plugin\n\n- [Documentation](https://github.com/dmhendricks/wordpress-base-plugin/wiki/)\n- [Features](#features)\n- [Requirements](#requirements)\n- [Installation](#installation)\n- [Future Goals](#future-goals)\n- [Change Log](#change-log)\n\n## Description\n\nThis is a boilerplate WordPress plugin featuring namespace autoloading and [Carbon Fields](https://carbonfields.net/?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=button\u0026utm_campaign=dmhendricks%2Fwordpress-base-plugin) examples. It is intended to be used as a starting point for creating WordPress plugins. It contains several examples and dependencies to get you started.\n\nIt may also be used as the means of [separating custom code](http://www.billerickson.net/core-functionality-plugin/?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=button\u0026utm_campaign=dmhendricks%2Fwordpress-base-plugin) from the theme or [extending a child theme](https://www.wp-code.com/wordpress-snippets/wordpress-grandchildren-themes/?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=button\u0026utm_campaign=dmhendricks%2Fwordpress-base-plugin).\n\n### Contributing\n\nHere are some ways that you can contribute:\n\n* Suggest improvements and/or code them.\n* [Report bugs](https://github.com/dmhendricks/wordpress-base-plugin/issues) and/or incompatibilities.\n* Host your sites with [Flywheel](https://share.getf.ly/e25g6k?utm_source=github.com\u0026utm_medium=campaign\u0026utm_content=button\u0026utm_campaign=dmhendricks%2Fwordpress-base-plugin), use [KeyCDN](https://www.keycdn.com/?a=42672\u0026utm_source=github.com\u0026utm_medium=campaign\u0026utm_content=button\u0026utm_campaign=dmhendricks%2Fwordpress-base-plugin\n) for speedy delivery of assets.\n\n## Features\n\n* Namespaces \u0026 dependency autoloading\n* Dependency checking via [Requirements](https://github.com/Kubitomakita/Requirements)\n* Powered by [Composer](https://getcomposer.org/?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=button\u0026utm_campaign=dmhendricks%2Fwordpress-base-plugin), [Gulp](https://gulpjs.com/?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=button\u0026utm_campaign=dmhendricks%2Fwordpress-base-plugin) and [Bower](https://bower.io/?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=button\u0026utm_campaign=dmhendricks%2Fwordpress-base-plugin)\n* Object caching (where available; [usage examples](https://github.com/dmhendricks/wordpress-toolkit/wiki/ObjectCache))\n* Easy installable ZIP file generation: `npm run zip`\n* Automatic translation file (`.pot`) creation. See [Translation](https://github.com/dmhendricks/wordpress-base-plugin/wiki/Translation).\n* Network Admin (multisite) options, shortcodes, widgets (via [Carbon Fields](https://carbonfields.net?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=button\u0026utm_campaign=dmhendricks%2Fwordpress-base-plugin)) and custom post types (via [PostTypes](https://github.com/jjgrainger/PostTypes/)) examples\n* Configuration registry ([docs](https://github.com/dmhendricks/wordpress-toolkit/wiki/ConfigRegistry)) and optional `wp-config.php` [constants](https://github.com/dmhendricks/wordpress-base-plugin/wiki/Configuration-\u0026-Constants)\n* Customizer examples using [WP Customizer Framework](https://github.com/inc2734/wp-customizer-framework/)\n* Define environmental variables via `.env` files ([reference](https://github.com/dmhendricks/wordpress-toolkit/wiki/ToolKit#environment))\n* [More to come...](#future-plans)\n\n## Requirements\n\n* WordPress 4.8 or higher\n* PHP 7 or higher\n* [Carbon Fields](https://github.com/htmlburger/carbon-fields) 2.2 or higher. See the wiki section [Carbon Fields](https://github.com/dmhendricks/wordpress-base-plugin/wiki#carbon-fields) for more info.\n\t* Carbon Fields is only required for the demo. You're welcome to strip out references if you do not wish to use it.\n\n## Installation\n\nIf you need tips on installing Node.js, Composer, Gulp \u0026 Bower, see [Installing Dependencies](https://github.com/dmhendricks/wordpress-base-plugin/wiki/Installing-Dependencies).\n\n#### The short version:\n\n1. Clone repository to your `plugins` directory\n1. Change the four variables in [package.json](https://github.com/dmhendricks/wordpress-base-plugin/wiki#setting-initial-variables). Modify [plugin.json](https://github.com/dmhendricks/wordpress-base-plugin/blob/master/plugin.json) as necessary.\n1. Run `npm install; gulp rename; composer install`\n1. (optional) For some of the included examples to work, you'll also want to run: `bower install; gulp;`\n\nYou'll want to delete features that you don't like (such as references to [TGMPA](http://tgmpluginactivation.com/) if you don't need it).\n\n### Clone Repository\n\n1. At command prompt, change to your `wp-content/plugins` directory.\n1. Clone the repository: `git clone https://github.com/dmhendricks/wordpress-base-plugin.git`\n1. Renamed the newly created `wordpress-base-plugin` directory to your own plugin slug.\n\n### Next Steps\n\nSee the [Getting Started](https://github.com/dmhendricks/wordpress-base-plugin/wiki#getting-started) documentation for further steps.\n\n## Future Goals\n\n* Add plugin `uninstall.php`\n* Switch to [webpack](https://webpack.js.org/) for frontend dependency management\n* ~~Remove or replace [wordpress-settings-api-class](https://github.com/tareq1988/wordpress-settings-api-class/) example with something actively developed~~\n* Clean up Carbon Fields _custom_ CSS classes\n* Add automatic GitHub update example\n* Add Gutenberg block examples\n\n## Screenshot\n\n![Settings Page](https://raw.githubusercontent.com/dmhendricks/wordpress-base-plugin/master/assets/screenshot-1.png \"Settings Page\")","funding_links":["https://paypal.me/danielhendricks"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmhendricks%2Fwordpress-base-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdmhendricks%2Fwordpress-base-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmhendricks%2Fwordpress-base-plugin/lists"}