The manage_pages_custom_column WordPress action fires in each custom column on the Posts list table for hierarchical post types, such as pages.
Usage
add_action('manage_pages_custom_column', 'your_custom_function', 10, 2); function your_custom_function($column_name, $post_id) { // your custom code here }
Parameters
- $column_name (string) – The name of the column to display.
- $post_id (int) – The current post ID.
More information
See WordPress Developer Resources: manage_pages_custom_column
Examples
Add a custom column to display the post ID
// Register the custom column function your_custom_column($columns) { $columns['post_id'] = 'Post ID'; return $columns; } add_filter('manage_pages_columns', 'your_custom_column'); // Display the post ID in the custom column function display_post_id($column_name, $post_id) { if ('post_id' === $column_name) { echo $post_id; } } add_action('manage_pages_custom_column', 'display_post_id', 10, 2);
Display the featured image in a custom column
// Register the custom column function your_custom_column($columns) { $columns['featured_image'] = 'Featured Image'; return $columns; } add_filter('manage_pages_columns', 'your_custom_column'); // Display the featured image in the custom column function display_featured_image($column_name, $post_id) { if ('featured_image' === $column_name) { $featured_img_url = get_the_post_thumbnail_url($post_id, 'thumbnail'); echo '<img src="' . esc_url($featured_img_url) . '" alt="Featured Image">'; } } add_action('manage_pages_custom_column', 'display_featured_image', 10, 2);
Display the word count of the post content
// Register the custom column function your_custom_column($columns) { $columns['word_count'] = 'Word Count'; return $columns; } add_filter('manage_pages_columns', 'your_custom_column'); // Display the word count in the custom column function display_word_count($column_name, $post_id) { if ('word_count' === $column_name) { $post_content = get_post_field('post_content', $post_id); $word_count = str_word_count(strip_tags($post_content)); echo $word_count; } } add_action('manage_pages_custom_column', 'display_word_count', 10, 2);
Show the author’s email in a custom column
// Register the custom column function your_custom_column($columns) { $columns['author_email'] = "Author's Email"; return $columns; } add_filter('manage_pages_columns', 'your_custom_column'); // Display the author's email in the custom column function display_author_email($column_name, $post_id) { if ('author_email' === $column_name) { $post_author_id = get_post_field('post_author', $post_id); $author_email = get_the_author_meta('email', $post_author_id); echo $author_email; } } add_action('manage_pages_custom_column', 'display_author_email', 10, 2);