【问题标题】:Wordpress Plugin Custom Post Columns Overwriting other Column ValuesWordpress 插件自定义帖子列覆盖其他列值
【发布时间】:2013-04-25 21:43:15
【问题描述】:

我正在编写一个 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');
}

知道是什么原因造成的吗?

谢谢!

【问题讨论】:

    标签: php wordpress


    【解决方案1】:

    您应该在 echo 语句周围放置一个 if 语句。

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

    添加说明:您的 display_posts_stickiness 函数会为表格中的每个单元格调用,而不仅仅是在您添加的列中。因此,您必须检查传递给函数的列 id 是否与您添加的列 id 匹配。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-30
      • 1970-01-01
      • 2013-10-12
      相关资源
      最近更新 更多