下面是由发布的代码的一个稍微干净的版本Nick. 有几个区别:
我使用匿名函数来避免全局名称空间混乱。请注意,如果只需要将代码添加到单个post类型,还可以使用闭包:
add_filter(\'manage_posts_columns\', function() {
// Do your thing here
});
<而不是返回全新的
$columns
数组,我正在现有数组中添加列。如果添加了另一列(通过WordPress更新或另一段代码),此方法不会破坏这一点简单的
if
在
manage_posts_custom_column
钩子而不是
switch
在这里似乎更有意义
add_image_size("admin-list-thumb", 80, 80, false);
$cols_fn = function($cols) {
$col_position = 1; // Change this to another position if you want
return array_merge(
array_splice($cols, 0, $col_position),
["admin-thumb" => "Thumb"],
$cols
);
};
$custom_cols_fn = function($col, $id) {
if ($col == "admin-thumb") {
$link = get_edit_post_link();
$thumb = get_the_post_thumbnail($id, "admin-list-thumb");
echo $thumb ? "<a href=\'$link\'>$thumb</a>" : "—";
}
};
add_filter(\'manage_posts_columns\', $cols_fn);
add_action(\'manage_posts_custom_column\', $custom_cols_fn, 10, 2 );
add_filter(\'manage_pages_columns\', $cols_fn);
add_action(\'manage_pages_custom_column\', $custom_cols_fn, 10, 2 );