https://github.com/themeplate/cpt
https://github.com/themeplate/cpt
custom-post-types custom-taxonomies wordpress
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/themeplate/cpt
- Owner: ThemePlate
- License: gpl-3.0
- Created: 2020-01-25T07:04:09.000Z (over 5 years ago)
- Default Branch: develop
- Last Pushed: 2025-04-08T14:46:25.000Z (about 2 months ago)
- Last Synced: 2025-04-19T13:16:40.324Z (about 1 month ago)
- Topics: custom-post-types, custom-taxonomies, wordpress
- Language: PHP
- Size: 76.2 KB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ThemePlate CPT
## Usage
```php
use ThemePlate\CPT\PostType;
use ThemePlate\CPT\Taxonomy;// One-liner
( new PostType( 'vehicle' ) )->register();
( new Taxonomy( 'brand' ) )->register();
```### Full customization
```php
/** https://developer.wordpress.org/reference/functions/register_post_type/#parameters */
$args = array(
'has_archive' => true,
'supports' => array( 'title', 'editor', 'thumbnail' ),
);
$person = new PostType( 'person', $args );// Custom singular and plural
$person->labels( 'Person', 'People' );
$person->register();/** https://developer.wordpress.org/reference/functions/register_taxonomy/#parameters */
$args = array(
'hierarchical' => true,
'default_term' => 'Unknown',
);
$job = new Taxonomy( 'job', $args );// Custom singular and plural
$job->labels( 'Job Title', 'Job Titles' );
$job->register();
```### Associations
```php
( new PostType( 'house' ) )->associate( 'category' )->register();
( new PostType( 'furniture' ) )->associate( 'category' )->register();
( new Taxonomy( 'style' ) )->associate( 'house' )->associate( 'furniture' )->register();
```