Last active
February 16, 2021 15:27
-
-
Save corilam/ee109a622a3181ad592370a02c1f6fc3 to your computer and use it in GitHub Desktop.
Object Custom Post Type
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Plugin Name: Custom Collection Plugin | |
* Plugin URI: https://thedigitalconcern.com | |
* Description: Creates a collection custom post type called Objects. | |
* Version: 1.0 | |
* Requires at least: 5.2 | |
* Requires PHP: 7.2 | |
* License: GPL v2 or later | |
* License URI: https://www.gnu.org/licenses/gpl-2.0.html | |
* Text Domain: custom-collection-plugin | |
*/ | |
// Register Custom Post Type | |
function object_custom_post_type() { | |
$labels = array( | |
'name' => _x( 'Objects', 'Post Type General Name', 'text_domain' ), | |
'singular_name' => _x( 'Object', 'Post Type Singular Name', 'text_domain' ), | |
'menu_name' => __( 'Objects', 'text_domain' ), | |
'name_admin_bar' => __( 'Object', 'text_domain' ), | |
'archives' => __( 'Object Archives', 'text_domain' ), | |
'attributes' => __( 'Object Attributes', 'text_domain' ), | |
'parent_item_colon' => __( 'Parent Object:', 'text_domain' ), | |
'all_items' => __( 'All Objects', 'text_domain' ), | |
'add_new_item' => __( 'Add New Object', 'text_domain' ), | |
'add_new' => __( 'Add New', 'text_domain' ), | |
'new_item' => __( 'New Object', 'text_domain' ), | |
'edit_item' => __( 'Edit Object', 'text_domain' ), | |
'update_item' => __( 'Update Object', 'text_domain' ), | |
'view_item' => __( 'View Object', 'text_domain' ), | |
'view_items' => __( 'View Objects', 'text_domain' ), | |
'search_items' => __( 'Search Object', 'text_domain' ), | |
'not_found' => __( 'Not found', 'text_domain' ), | |
'not_found_in_trash' => __( 'Not found in Trash', 'text_domain' ), | |
'featured_image' => __( 'Featured Image', 'text_domain' ), | |
'set_featured_image' => __( 'Set featured image', 'text_domain' ), | |
'remove_featured_image' => __( 'Remove featured image', 'text_domain' ), | |
'use_featured_image' => __( 'Use as featured image', 'text_domain' ), | |
'insert_into_item' => __( 'Insert into Object', 'text_domain' ), | |
'uploaded_to_this_item' => __( 'Uploaded to this Object', 'text_domain' ), | |
'items_list' => __( 'Objects list', 'text_domain' ), | |
'items_list_navigation' => __( 'Objects list navigation', 'text_domain' ), | |
'filter_items_list' => __( 'Filter Objects list', 'text_domain' ), | |
); | |
$args = array( | |
'label' => __( 'Object', 'text_domain' ), | |
'description' => __( 'Object Description', 'text_domain' ), | |
'labels' => $labels, | |
'supports' => array( 'title', 'editor', 'thumbnail', 'comments', 'custom-fields' ), | |
'taxonomies' => array( 'object_cats' ), | |
'hierarchical' => true, | |
'public' => true, | |
'show_ui' => true, | |
'show_in_menu' => true, | |
'menu_position' => 5, | |
'menu_icon' => 'dashicons-portfolio', | |
'show_in_admin_bar' => true, | |
'show_in_nav_menus' => true, | |
'can_export' => true, | |
'has_archive' => true, | |
'exclude_from_search' => false, | |
'publicly_queryable' => true, | |
'query_var' => 'object', | |
'capability_type' => 'page', | |
); | |
register_post_type( 'object', $args ); | |
} | |
add_action( 'init', 'object_custom_post_type', 0 ); | |
// Register Custom Taxonomy | |
function object_custom_taxonomy() { | |
$labels = array( | |
'name' => _x( 'Taxonomies', 'Taxonomy General Name', 'text_domain' ), | |
'singular_name' => _x( 'Taxonomy', 'Taxonomy Singular Name', 'text_domain' ), | |
'menu_name' => __( 'Taxonomy', 'text_domain' ), | |
'all_items' => __( 'All Items', 'text_domain' ), | |
'parent_item' => __( 'Parent Item', 'text_domain' ), | |
'parent_item_colon' => __( 'Parent Item:', 'text_domain' ), | |
'new_item_name' => __( 'New Item Name', 'text_domain' ), | |
'add_new_item' => __( 'Add New Item', 'text_domain' ), | |
'edit_item' => __( 'Edit Item', 'text_domain' ), | |
'update_item' => __( 'Update Item', 'text_domain' ), | |
'view_item' => __( 'View Item', 'text_domain' ), | |
'separate_items_with_commas' => __( 'Separate items with commas', 'text_domain' ), | |
'add_or_remove_items' => __( 'Add or remove items', 'text_domain' ), | |
'choose_from_most_used' => __( 'Choose from the most used', 'text_domain' ), | |
'popular_items' => __( 'Popular Items', 'text_domain' ), | |
'search_items' => __( 'Search Items', 'text_domain' ), | |
'not_found' => __( 'Not Found', 'text_domain' ), | |
'no_terms' => __( 'No items', 'text_domain' ), | |
'items_list' => __( 'Items list', 'text_domain' ), | |
'items_list_navigation' => __( 'Items list navigation', 'text_domain' ), | |
); | |
$args = array( | |
'labels' => $labels, | |
'hierarchical' => false, | |
'public' => true, | |
'show_ui' => true, | |
'show_admin_column' => true, | |
'show_in_nav_menus' => true, | |
'show_tagcloud' => true, | |
); | |
register_taxonomy( 'taxonomy', array( 'object' ), $args ); | |
} | |
add_action( 'init', 'object_custom_taxonomy', 0 ); | |
?> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment