Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /**
- * Plugin Name: Testimonial Custom Post Type and Position Taxonomy
- * Description: IRW Custom Plugin for adding Testimonial CPT and Position Taxonomy (for Home page or About page)
- * Author: Doug Rider
- * Author URI: https://riderworks.com
- * Plugin URI: https://riderworks.com
- *
- * Version: 1.0
- */
- /*
- * Testimonials Custom Post Type
- */
- add_action( 'init', 'irw_testimonial_register_post_type' );
- function irw_testimonial_register_post_type() {
- $labels = [
- 'name' => esc_html__( 'Testimonials', 'irw-testimonial-textdomain' ),
- 'singular_name' => esc_html__( 'Testimonial', 'irw-testimonial-textdomain' ),
- 'add_new' => esc_html__( 'Add New', 'irw-testimonial-textdomain' ),
- 'add_new_item' => esc_html__( 'Add new testimonial', 'irw-testimonial-textdomain' ),
- 'edit_item' => esc_html__( 'Edit Testimonial', 'irw-testimonial-textdomain' ),
- 'new_item' => esc_html__( 'New Testimonial', 'irw-testimonial-textdomain' ),
- 'view_item' => esc_html__( 'View Testimonial', 'irw-testimonial-textdomain' ),
- 'view_items' => esc_html__( 'View Testimonials', 'irw-testimonial-textdomain' ),
- 'search_items' => esc_html__( 'Search Testimonials', 'irw-testimonial-textdomain' ),
- 'not_found' => esc_html__( 'No testimonials found', 'irw-testimonial-textdomain' ),
- 'not_found_in_trash' => esc_html__( 'No testimonials found in Trash', 'irw-testimonial-textdomain' ),
- 'parent_item_colon' => esc_html__( 'Parent Testimonial:', 'irw-testimonial-textdomain' ),
- 'all_items' => esc_html__( 'All Testimonials', 'irw-testimonial-textdomain' ),
- 'archives' => esc_html__( 'Testimonial Archives', 'irw-testimonial-textdomain' ),
- 'attributes' => esc_html__( 'Testimonial Attributes', 'irw-testimonial-textdomain' ),
- 'insert_into_item' => esc_html__( 'Insert into testimonial', 'irw-testimonial-textdomain' ),
- 'uploaded_to_this_item' => esc_html__( 'Uploaded to this testimonial', 'irw-testimonial-textdomain' ),
- 'featured_image' => esc_html__( 'Featured image', 'irw-testimonial-textdomain' ),
- 'set_featured_image' => esc_html__( 'Set featured image', 'irw-testimonial-textdomain' ),
- 'remove_featured_image' => esc_html__( 'Remove featured image', 'irw-testimonial-textdomain' ),
- 'use_featured_image' => esc_html__( 'Use as featured image', 'irw-testimonial-textdomain' ),
- 'menu_name' => esc_html__( 'Testimonials', 'irw-testimonial-textdomain' ),
- 'filter_items_list' => esc_html__( 'Filter testimonials list', 'irw-testimonial-textdomain' ),
- 'items_list_navigation' => esc_html__( 'Testimonials list navigation', 'irw-testimonial-textdomain' ),
- 'items_list' => esc_html__( 'Testimonials list', 'irw-testimonial-textdomain' ),
- 'item_published' => esc_html__( 'Testimonial published', 'irw-testimonial-textdomain' ),
- 'item_published_privately' => esc_html__( 'Testimonial published privately', 'irw-testimonial-textdomain' ),
- 'item_reverted_to_draft' => esc_html__( 'Testimonial reverted to draft', 'irw-testimonial-textdomain' ),
- 'item_scheduled' => esc_html__( 'Testimonial scheduled', 'irw-testimonial-textdomain' ),
- 'item_updated' => esc_html__( 'Testimonial updated', 'irw-testimonial-textdomain' ),
- 'text_domain' => esc_html__( 'irw-testimonial-textdomain', 'irw-testimonial-textdomain' ),
- ];
- $args = [
- 'label' => esc_html__( 'Testimonials', 'irw-testimonial-textdomain' ),
- 'labels' => $labels,
- 'description' => '',
- 'public' => true,
- 'hierarchical' => true,
- 'exclude_from_search' => false,
- 'publicly_queryable' => true,
- 'show_ui' => true,
- 'show_in_nav_menus' => true,
- 'show_in_admin_bar' => true,
- 'show_in_rest' => false,
- 'menu_position' => 5,
- 'query_var' => true,
- 'can_export' => true,
- 'delete_with_user' => false,
- 'has_archive' => false,
- 'rest_base' => '',
- 'show_in_menu' => true,
- 'menu_icon' => 'dashicons-editor-quote',
- 'capability_type' => 'post',
- 'supports' => ['title', 'thumbnail', 'revisions', 'excerpt'],
- 'taxonomies' => ['position'],
- 'rewrite' => [
- 'with_front' => false,
- ],
- ];
- register_post_type( 'testimonial', $args );
- }
- /*
- * Position Taxonomy
- */
- add_action( 'init', 'irw_position_register_taxonomy' );
- function irw_position_register_taxonomy() {
- $labels = [
- 'name' => esc_html__( 'Positions', 'irw-position-textdomain' ),
- 'singular_name' => esc_html__( 'Position', 'irw-position-textdomain' ),
- 'menu_name' => esc_html__( 'Positions', 'irw-position-textdomain' ),
- 'search_items' => esc_html__( 'Search Positions', 'irw-position-textdomain' ),
- 'popular_items' => esc_html__( 'Popular Positions', 'irw-position-textdomain' ),
- 'all_items' => esc_html__( 'All Positions', 'irw-position-textdomain' ),
- 'parent_item' => esc_html__( 'Parent Position', 'irw-position-textdomain' ),
- 'parent_item_colon' => esc_html__( 'Parent Position', 'irw-position-textdomain' ),
- 'edit_item' => esc_html__( 'Edit Position', 'irw-position-textdomain' ),
- 'view_item' => esc_html__( 'View Position', 'irw-position-textdomain' ),
- 'update_item' => esc_html__( 'Update Position', 'irw-position-textdomain' ),
- 'add_new_item' => esc_html__( 'Add new position', 'irw-position-textdomain' ),
- 'new_item_name' => esc_html__( 'New position name', 'irw-position-textdomain' ),
- 'separate_items_with_commas' => esc_html__( 'Separate positions with commas', 'irw-position-textdomain' ),
- 'add_or_remove_items' => esc_html__( 'Add or remove positions', 'irw-position-textdomain' ),
- 'choose_from_most_used' => esc_html__( 'Choose most used positions', 'irw-position-textdomain' ),
- 'not_found' => esc_html__( 'No positions found', 'irw-position-textdomain' ),
- 'no_terms' => esc_html__( 'No positions found', 'irw-position-textdomain' ),
- 'items_list_navigation' => esc_html__( 'Positions list pagination', 'irw-position-textdomain' ),
- 'items_list' => esc_html__( 'Positions list', 'irw-position-textdomain' ),
- 'most_used' => esc_html__( 'Most Used', 'irw-position-textdomain' ),
- 'back_to_items' => esc_html__( 'Back to positions', 'irw-position-textdomain' ),
- 'text_domain' => esc_html__( 'irw-position-textdomain', 'irw-position-textdomain' ),
- ];
- $args = [
- 'label' => esc_html__( 'Positions', 'irw-position-textdomain' ),
- 'labels' => $labels,
- 'description' => '',
- 'public' => true,
- 'publicly_queryable' => true,
- 'hierarchical' => true,
- 'show_ui' => true,
- 'show_in_menu' => true,
- 'show_in_nav_menus' => true,
- 'meta_box_cb' => true,
- 'show_in_rest' => false,
- 'show_tagcloud' => false,
- 'show_in_quick_edit' => true,
- 'show_admin_column' => false,
- 'query_var' => true,
- 'sort' => false,
- 'rest_base' => '',
- 'rewrite' => [
- 'with_front' => false,
- 'hierarchical' => false,
- ],
- ];
- register_taxonomy( 'position', ['testimonial'], $args );
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement