GigaOM Custom Post Type Factory

This is a convenience class and collection of methods to make creating new custom post types with their own metaboxes easy.

The general idea is to define a function that's hooked to the register_post_types action. The function defines a class for your post type that extends the GO_Cpt class. This follows a design pattern established by the modern widgets API (as introduced in WP 2.8) http://codex.wordpress.org/Widgets_API#Developing_Widgets .

The result is a new custom post type and much easier creation and updating of custom meta associated with that post type. You'll also have a convenient object you can use to access the metadata associated with each post.

function my_customposttype()
{
    class My_CustomPostType extends GO_Cpt
    {
        function __construct()
        {
            // execute the parent constructor with the name 
            // and definition for the custom post type
            parent::__construct( $post_type_name , $post_type_definition );
        }
    
        function metabox( $post , $meta )
        {
            // print out the form here
            // 
            // this method is optional, only use it if you want to 
            // add a metabox to your custom post type
        }

        function update( $new_meta , $old_meta )
        {
            // sanitize and validate the metadata
            // then return $meta so it can be saved
            //
            // this method is required if a 
            // metabox() method is included
            
        }
    }

    global $my_customposttype;
    $my_customposttype = new My_CustomPostType;
}

// hook that function to the register_post_types action
add_action( 'register_post_types' , 'my_customposttype' );

Backstory: defining the post type class inside the function avoids issues with loading order and fatal errors resulting from attempting to extend a class that might not exist yet. Isn't PHP awesome?

See the included hello world example: http://plugins.trac.wordpress.org/browser/go-cptfactory/trunk/example-helloworld-cpt.php

To access the meta associated with a post, you can call $my_customposttype->get_meta( $post_id );

You can easily add a method and hook to filter the_content or the_excerpt to insert custom values that may have been entered in the post meta. Simply add add_filter( 'the_content' , array( $this , 'the_content' )); in the __construct() and then define another method in the My_CustomPostType class such as:`

    function the_content( $content )
    { 
        $meta_print = print_r( $this->get_meta( get_the_ID() ) , TRUE ); 
        return $meta_print . $content 
    }

`

Featured Posts and Custom Posts

When working on WordPress themes, we tend to use a lot of custom post types. This gives the end- user custom little sections to manage content in. Often enough we see the need to be able to feature posts or custom posts of custom post types (cpts). This can be accomplished by using a bunch of diffe.........

Similar: 60%

Notes PostWidgets

Please note! Developement of this plugin has been suspended. I would recommend my newer plugin WP Editor Widget instead. WP Editor Widget adds a WYSIWYG widget using the built in WP Editor without adding a custom post type. Notes PostWidgets is a plugin which adds a custom post type ("Post Widgets".........

Similar: 40%

pTypeConverter

Converts post types from one to another. This plugin is a complete reworking of my old plugin p2pConverter. pTypeConverter allows you to easily convert any post type of a certain post to another in an easy to use interface. A pTypeConverter role capability prevents unwanted users from converting pa.........

Similar: 19%

Taxonomy Manager

Manage taxonomies from WordPress back-end. Add/Edit/Delete taxonomies and more! Features: Create taxonomies. Delete taxonomies. Edit taxonomies. Add taxonomies for custom post types. Add taxonomies for pages and links. Widget to display terms of a taxonomy as a tag cloud or list. More features .........

Similar: 15%

Mundoon Taxonomy Filter Checkbox

Quickly create taxonomies filters for custom post types templates! Simple and fast implementation!!...

Similar: 15%

Queue Posts

Allows you to place new posts in a queue for later publication at a specified interval....

Similar: 12%

Ajax Pagination and Infinite Scroll

Load paged content with Ajax throughout your WordPress site. This plugin works where you'd usually display paged content including on posts, pages, custom post types and WooCommerce. There are 3 paging types to choose from; infinite scroll that automatically loads new posts as the user reaches the .........

Similar: 12%

Custom Search by BestWebSoft

Simple and useful tool for the people who want to to extend search functionality of their website but don't want to spend their time on customization. This plugin allows to add a custom post type. Great solution for the beginners as well as for more advanced users. Video instruction on Installa.........

Similar: 7%

Quick Featured Images

The plugin is available in English, Spanish (Español), Arabic (العربية) and German (Deutsch)....

Similar: 4%

WP App Studio

WP App Studio allows you to build advanced sites in the form of WordPress plugins without writing a single line of PHP code. WP App Studio Plugin is the tool you use to design your plugin and send it for code generation. Create your own plugin and move on....

Similar: 2%