此快速提示介绍了如何在 WordPress 博客的管理屏幕中添加自定义列。
以下是一些代码片段,您可以使用它们来自定义“管理屏幕”中的列。
您可以将它们复制并粘贴到主题的 functions.php 文件中,或下载本文附带的插件。
第 1 步定义列函数
首先,让我们定义一些辅助函数,稍后我们将把它们挂接到 WordPress 中。前两个添加新列(或两列,或删除默认列),而其他列则显示列内容。在这些示例中,我们假设您已经激活了电影自定义帖子类型和流派自定义分类。您可以在上一篇文章中了解如何创建自定义帖子类型和分类法。
function ST4_columns_head($defaults) {$defaults['first_column'] = 'First Column';/* ADD ANOTHER COLUMN (OPTIONAL) */// $defaults['second_column'] = 'Second Column';/* REMOVE DEFAULT CATEGORY COLUMN (OPTIONAL) */// unset($defaults['categories']);/* TO GET DEFAULTS COLUMN NAMES: */// print_r($defaults);return $defaults;}// ONLY FOR movie CUSTOM POST TYPEfunction ST4_columns_head_movies($defaults) {$defaults['my_movie_column'] = 'MY MOVIE COLUMN';return $defaults;}// GENERAL PURPOSEfunction ST4_columns_content($column_name, $post_ID) {if ($column_name == 'first_column') {// DO STUFF FOR first_column COLUMNecho 'The post ID is: ' . $post_ID;}/* IF YOU NEED ANOTHER COLUMN - UNCOMMENT ALSO$defaults['second_column'] = 'Second Column';in ST4_columns_head()*//*if ($column_name == 'second_column') {// DO STUFF FOR second_column COLUMN}*/}// TAXONOMIES: CATEGORIES (POSTS AND LINKS), TAGS AND CUSTOM TAXONOMIESfunction ST4_columns_content_taxonomy($c, $column_name, $term_id) {if ($column_name == 'first_column') {echo 'The term ID is: ' . $term_id;}}// USERSfunction ST4_columns_content_users($c, $column_name, $user_id) {if ($column_name == 'first_column') {$output .= 'The user ID is: ' . $user_id;}if ($column_name == 'second_column') {$output .= 'This is the second column content';}return $output;}// CUSTOM POSTSfunction ST4_columns_content_movies($column_name, $movie_ID) {if ($column_name == 'my_movie_column') {echo 'The movie ID is: ' . $movie_ID;}}
登录后复制
第 2 步将列函数挂接到 WordPress
现在,让我们将这些功能挂接到 WordPress 管理屏幕中:
帖子和帖子类型,页面除外
add_filter('manage_posts_columns', 'ST4_columns_head');add_filter('manage_posts_custom_column', 'ST4_columns_content', 10, 2);
登录后复制
仅限 WordPress 默认帖子
add_filter('manage_post_posts_columns', 'ST4_columns_head', 10);add_action('manage_post_posts_custom_column', 'ST4_columns_content', 10, 2);
登录后复制
仅限 WordPress 默认页面
add_filter('manage_page_posts_columns', 'ST4_columns_head', 10);add_action('manage_page_posts_custom_column', 'ST4_columns_content', 10, 2);
登录后复制
仅限电影自定义帖子类型
add_filter('manage_movie_posts_columns', 'ST4_columns_head_movies', 10);add_action('manage_movie_posts_custom_column', 'ST4_columns_content_movies', 10, 2);
登录后复制
帖子类别
add_filter('manage_edit-category_columns', 'ST4_columns_head');add_filter('manage_category_custom_column', 'ST4_columns_content_taxonomy', 10, 2);
登录后复制
仅限流派自定义分类
add_filter('manage_edit-genre_columns', 'ST4_columns_head');add_filter('manage_genre_custom_column', 'ST4_columns_content_taxonomy', 10, 2);
登录后复制
发布标签
add_filter('manage_edit-post_tag_columns', 'ST4_columns_head');add_filter('manage_post_tag_custom_column', 'ST4_columns_content_taxonomy', 10, 2);
登录后复制
链接类别
add_filter('manage_edit-link_category_columns', 'ST4_columns_head');add_filter('manage_link_category_custom_column', 'ST4_columns_content_taxonomy', 10, 2);
登录后复制
媒体库
add_filter('manage_media_columns', 'ST4_columns_head');add_filter('manage_media_custom_column', 'ST4_columns_content', 10, 2);
登录后复制
用户
add_filter('manage_users_columns', 'ST4_columns_head');add_filter('manage_users_custom_column', 'ST4_columns_content_users', 10, 2);
登录后复制
最后的注释
最后两个注意事项:如果管理屏幕没有项目,例如还没有标签,则不会显示新列的内容。
ST4_columns_content_users 函数与其他函数略有不同,因为它返回一个包含 HTML 的 PHP 变量,而不是动态打印列内容。
以上就是快速提示:在WordPress管理屏幕中添加自定义列的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/1700831.html