{"id":19311133,"url":"https://github.com/boxuk/boxuk-base-wp-plugin","last_synced_at":"2025-04-22T14:30:28.168Z","repository":{"id":62496359,"uuid":"378923338","full_name":"boxuk/boxuk-base-wp-plugin","owner":"boxuk","description":"[READ ONLY] A base plugin for WordPress that sets up some sensible initial options for a new WP project.","archived":false,"fork":false,"pushed_at":"2022-03-01T12:25:34.000Z","size":52,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-04-14T11:50:53.985Z","etag":null,"topics":["wordpress","wordpress-plugin"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":false,"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/boxuk.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":"2021-06-21T12:29:44.000Z","updated_at":"2024-04-14T11:50:53.986Z","dependencies_parsed_at":"2022-11-02T09:32:21.344Z","dependency_job_id":null,"html_url":"https://github.com/boxuk/boxuk-base-wp-plugin","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxuk%2Fboxuk-base-wp-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxuk%2Fboxuk-base-wp-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxuk%2Fboxuk-base-wp-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxuk%2Fboxuk-base-wp-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/boxuk","download_url":"https://codeload.github.com/boxuk/boxuk-base-wp-plugin/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250258742,"owners_count":21400961,"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":["wordpress","wordpress-plugin"],"created_at":"2024-11-10T00:27:54.703Z","updated_at":"2025-04-22T14:30:28.158Z","avatar_url":"https://github.com/boxuk.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BoxUK WordPress Base Plugin\n\n\u003e This project is now abandoned. If you're interested in taking it over, get in touch. For alternatives, we'd recommend looking at [WordPress' create block package](https://developer.wordpress.org/block-editor/reference-guides/packages/packages-create-block/). Though it differs from the functionality this packages provides, it's provided to support a more modern way of developing WordPress features. \n\nA WordPress plugin that includes a number of things to help us work on WordPress projects.\n\n[![GPLv2 License](https://img.shields.io/github/license/boxuk/boxuk-base-wp-plugin)](https://github.com/boxuk/boxuk-base-wp-plugin/blob/6675942f8babaa9447c1224225eae153981af660/LICENSE)\n\n## WP-CLI\n\nWe provide the following useful WP-CLI commands:\n\n* `wp i18n-twig make-pot` - which is an extension of `wp i18n` to add twig support to the `make-pot` command (only available if timber and twig is installed)\n* `wp scaffold boxuk-mu-plugin` - which is an extension of `wp scaffold` to add support for scaffolding an opinionated `mu-plugin`\n\n## DependencyInjection\n\nThe plugin is registered with the container from the [Box UK WP Project Skeleton](https://github.com/boxuk/wp-project-skeleton) via an extension within `src/DependencyInjection` this works just like Symfony bundles, for information in the [Symfony docs](https://symfony.com/doc/master/components/dependency_injection/compilation.html#managing-configuration-with-extensions).\n\n## Hooks\n\nAdded support for tagging services in order to decouple hooks from the service, e.g.\n\n```yaml\nservices:\n    _defaults:\n        autowire: true\n        autoconfigure: true\n\n    BoxUk\\Mu\\Plugins\\MyPlugin\\MyService:\n        tags:\n            - { name: 'wp_hook', action: 'init', method: 'something_to_do_on_init' }\n```\n\n`action` can be replaced with `filter` when using a filter. `priority` and `accepted_args` also supported.\n\n## DB Repositories\n\nWe wrap database query access in repository classes for an easier abstraction dealing with querying the database. This follows a loose [repository pattern](https://shawnmc.cool/2015-01-08_the-repository-pattern).\n\n## Feature Flags\n\nThere is a helper you can use when developing with feature flags which will allow you to configure flags in yaml. Usage is as follows:\n\n```php\nboxuk_container()-\u003eget('BoxUk\\Plugins\\Base\\FeatureFlag\\FeatureFlagManager')-\u003eregister_from_yaml(\n__DIR__ . '/flags.yaml' );\n```\n\n## Gutenberg\n\nIt's useful to allow a phased approach to enabling gutenberg across a site. This helper will allow you to use tags in order to 'turn on' gutenberg for\nselect posts easily.\n\n## Security\n\nProvides a number of security enhancements by default:\n\n* Remove users endpoints from the REST API\n* 404s author queries to protect against author enumeration\n* Sets X-Frame-Options header to SAMEORIGIN to protect against clickjacking\n\n## License\n\n[GPLv2](https://choosealicense.com/licenses/gpl-2.0/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboxuk%2Fboxuk-base-wp-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fboxuk%2Fboxuk-base-wp-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboxuk%2Fboxuk-base-wp-plugin/lists"}