Developer Docs
  • Getting started
  • Tutorials
    • Integrate your theme with HivePress
    • Create a custom HivePress extension
  • Framework
    • Blocks
      • Callback
      • Container
      • Content
      • Form
      • Menu
      • Modal
      • Part
      • Section
      • Template
      • Toggle
    • Components
      • Cache
      • Helper
      • Request
      • Router
      • Translator
    • Configurations
      • Comment types
      • Image sizes
      • Meta boxes
      • Post types
      • Scripts
      • Settings
      • Strings
      • Styles
      • Taxonomies
    • Controllers
    • Emails
    • Fields
      • Checkbox
      • Checkboxes
      • Date
      • Date Range
      • Email
      • File
      • Number
      • Number Range
      • Password
      • Phone
      • Radio Buttons
      • Repeater
      • Select
      • Text
      • Textarea
      • Time
      • URL
    • Forms
    • Menus
    • Models
      • Making queries
      • Creating models
      • Customizing models
    • Templates
  • Resources
    • Code snippets
    • Code reference
    • Hook reference
    • REST API
Powered by GitBook
On this page

Was this helpful?

  1. Framework
  2. Configurations

Post types

PreviousMeta boxesNextScripts

Last updated 2 years ago

Was this helpful?

This configuration contains parameters that HivePress uses for registering the custom post types. Each post type is defined as an array of parameters accepted by the function. The array key is used as the post type name (prefixed with hp_).

The code example below changes the listing URL slug and the vendor icon in the WordPress dashboard menu. In the same way, you can customize any of the available post types or register a new one by adding an array with the post type parameters.

add_filter(
	'hivepress/v1/post_types',
	function( $post_types ) {

		// Change listing URL slug.
		$post_types['listing']['rewrite']['slug'] = 'custom-slug';

		// Change vendor menu icon.
		$post_types['vendor']['menu_icon'] = 'dashicons-building';

		return $post_types;
	}
);
register_post_type