The export_filters WordPress PHP action fires at the end of the export filters form, allowing developers to add custom export filters.
Usage
add_action('export_filters', 'your_custom_function'); function your_custom_function() { // your custom code here }
Parameters
- None
More information
See WordPress Developer Resources: export_filters
Examples
Add a custom post type to the export filters
Add a dropdown to select a custom post type for exporting.
add_action('export_filters', 'add_custom_post_type_export_filter'); function add_custom_post_type_export_filter() { $post_types = get_post_types(array('public' => true, '_builtin' => false), 'objects'); foreach ($post_types as $post_type) { ?> <label><?php echo $post_type->labels->name; ?></label> <select name="custom_post_type_export_<?php echo $post_type->name; ?>"> <option value="0"><?php _e('All'); ?></option> <?php $args = array( 'post_type' => $post_type->name, 'posts_per_page' => -1 ); $custom_posts = get_posts($args); foreach ($custom_posts as $custom_post) { echo '<option value="' . $custom_post->ID . '">' . $custom_post->post_title . '</option>'; } ?> </select> <?php } }
Add a category filter to the export filters
Allow users to filter the exported content by category.
add_action('export_filters', 'add_category_export_filter'); function add_category_export_filter() { $categories = get_categories(); ?> <label><?php _e('Categories'); ?></label> <select name="export_category"> <option value="0"><?php _e('All'); ?></option> <?php foreach ($categories as $category) { echo '<option value="' . $category->term_id . '">' . $category->name . '</option>'; } ?> </select> <?php }
Add a custom taxonomy filter to the export filters
Allow users to filter exported content by a custom taxonomy.
add_action('export_filters', 'add_custom_taxonomy_export_filter'); function add_custom_taxonomy_export_filter() { $taxonomies = get_taxonomies(array('_builtin' => false), 'objects'); foreach ($taxonomies as $taxonomy) { $terms = get_terms($taxonomy->name); ?> <label><?php echo $taxonomy->labels->name; ?></label> <select name="custom_taxonomy_export_<?php echo $taxonomy->name; ?>"> <option value="0"><?php _e('All'); ?></option> <?php foreach ($terms as $term) { echo '<option value="' . $term->term_id . '">' . $term->name . '</option>'; } ?> </select> <?php } }
Add a date range filter to the export filters
Allow users to filter exported content by a date range.
add_action('export_filters', 'add_date_range_export_filter'); function add_date_range_export_filter() { ?> <label><?php _e('Date Range'); ?></label> <input type="date" name="export_date_start"> <input type="date" name="export_date_end"> <?php }