Wordpress插件自定义Post列覆盖其他列值


Wordpress Plugin Custom Post Columns Overwriting other Column Values

我正在写一个wordpress插件,在帖子下面添加一个自定义字段。

但是,其他帖子列(即页面标题,页面描述等)被覆盖并全部输出"创建帖子"。列标签不受影响。

下面是我的代码示例:

if (isset($dl_pluginSeries)) {
    //Actions
    add_action('admin_menu', 'interpost_ap');
    # add_action('wp_head', array(&$dl_pluginSeries, 'addHeaderCode'), 1);
    add_action('aaaa/aaaaa.php',  array(&$dl_pluginSeries, 'init'));

function display_posts_stickiness( $column, $post_id ) {
    echo '<a target="_blank" href="',content_url(),'/plugins/aaaa/php/popup.php?post=',the_permalink(),'">Create Post</a><br />';
    }
    add_action( 'manage_posts_custom_column' , 'display_posts_stickiness', 10, 2 );
    //Filters
    #add_filter('the_content', array(&$dl_pluginSeries, 'addContent'),1); 
    # add_filter('get_comment_author', array(&$dl_pluginSeries, 'authorUpperCase'));
    function add_interpost_column($columns) {
        return array_merge( $columns, array('interarray' => __('Create a Post')) );
    }
    add_filter('manage_posts_columns' , 'add_interpost_column');
}

你知道这是什么原因吗?

谢谢!

应该在echo语句周围加上if语句。

if ('interarray' == $column) {
    echo 'foobar';
}

添加的澄清:您的display_posts_stickiness函数将被调用表中的每个单元格,而不仅仅是在您添加的列中。因此,您必须检查传入函数的列id是否与您添加的列id匹配。