We'll create fresh WordPress site with LibWp installed. You have 20 minutes to test the plugin after that site we'll be deleted.
Provide some simple functionality to register some hooks that could not register inside the WordPress themes
Get instance of main class.
LibWp();
Post type
LibWp()->postType();
Taxonomy
LibWp()->taxonomy();
LibWp()->postType()
->setName('book')
->setLabels([
'name' => _x('Books', 'Post type general name', 'textdomain'),
'singular_name' => _x('Book', 'Post type singular name', 'textdomain'),
'menu_name' => _x('Books', 'Admin Menu text', 'textdomain'),
'add_new' => __('Add New', 'textdomain'),
'edit_item' => __('Edit Book', 'textdomain'),
'view_item' => __('View Book', 'textdomain'),
'all_items' => __('All Books', 'textdomain'),
])
->setFeatures([
'title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments'
])
->setArgument('show_ui', true)
->register();
LibWp()->taxonomy()
->setName('types')
->setPostTypes('book')
->setArgument('show_in_rest', true)
->setLabels([
'name' => _x('Types', 'taxonomy general name', 'textdomain'),
'singular_name' => _x('Type', 'taxonomy singular name', 'textdomain'),
'search_items' => __('Search Types', 'textdomain'),
'all_items' => __('All Types', 'textdomain'),
'edit_item' => __('Edit Type', 'textdomain'),
'add_new_item' => __('Add New Type', 'textdomain'),
'new_item_name' => __('New Type Name', 'textdomain'),
'menu_name' => __('Types', 'textdomain'),
])
->register();