- Contributors: @timperry, @shaunbent, @emaildano, @rafegoldberg, @thomasdebruin, @gnowland
- Tags: ACF, Post Type Selector
- Requires at least: 4.0
- Tested up to: 5.0.0
- Stable tag: trunk
- License: GPLv2 or later
- License URI: http://www.gnu.org/licenses/gpl-2.0.html
Provides the option to select a single or multiple post types
This add-on will work with:
- version 5 and up
- version 4 and up
This add-on can be treated as both a WP plugin and a theme include.
- Copy the 'acf-post-type-selector' folder into your plugins folder
- Activate the plugin via the Plugins admin page
- Copy the 'acf-post-type-selector' folder into your theme folder (can use sub folders). You can place the folder anywhere inside the 'wp-content' directory
- Edit your functions.php file and add the code below (Make sure the path is correct to include the acf-post-type-selector.php file)
add_action( 'acf/register_fields', 'my_register_fields' );
function my_register_fields() {
include_once( 'acf-post-type-selector/post-type-selector-v4.php' );
}
add_action( 'acf/include_fields', 'my_register_fields' );
function my_register_fields() {
include_once( 'acf-post-type-selector/post-type-selector-v5.php' );
}
$post_type_var = 'post_type';
$post_type = get_sub_field( $post_type_var );
<?php
// get post type fields
$post_type_var = 'post_type';
$post_type = get_sub_field( $post_type_var );
// get post type label
$post_type_object = get_post_type_object( $post_type ); ?>
<li><a href="<?php echo get_post_type_archive_link( $post_type ); ?>"><?php echo $post_type_object->label; ?></a></li>
By default, only post types with parameter public
will be shown. If you need to show non-public post types use the filter post_type_selector_post_types
as described below. This filter also allows you to remove post types from the list.
add_filter( 'post_type_selector_post_types', function( $post_types, $field ) {
$post_types['foo'] = get_post_type_object( 'foo' );
unset( $post_types['post'] );
return $post_types;
}, 10, 2 );
- Filter available post types
- Support for ACF
v5
- Initial Release.