Nhận cảnh báo: Thiếu đối số 2 cho Manage_posts_custom_column ()?


7

Tôi đã tạo một loại bài đăng tùy chỉnh, hai nguyên tắc phân loại tùy chỉnh và hiển thị chúng trong phần 'quản lý bài đăng, nhưng tôi nhận được cảnh báo sau:

Cảnh báo: Thiếu đối số 2 cho Manage_posts_custom_column () trong /home/aleche23/alexchen.info/wp-content/theme/techozoic-fluid/fifts/custom-post-types.php trên dòng 95

Hình ảnh:

nhập mô tả hình ảnh ở đây

<?php

/**
 * Create the Blocks custom post type and the Sections custom taxonomy
 */
add_action('init', 'create_post_type');

        // Register custom post types and custom taxonomies
        function create_post_type() {
            register_post_type('blocks',array(
                'labels' => array(
                    'name' => __( 'Blocks' ),
                    'singular_name' => __( 'Block' ),
                    'add_new_item' => 'Add New Block',
                    'edit_item' => 'Edit Block',
                    'new_item' => 'New Block',
                    'search_items' => 'Search Block',
                    'not_found' => 'No Blocks found',
                    'not_found_in_trash' => 'No Blocks found in trash',
                ),
                'public' => true,
                'hierarchical' => false,
                'taxonomies' => array( 'section'),
                'supports' => array('title','editor','thumbnail','custom-fields'),
                'rewrite' => array('slug'=>'blocks','with_front'=>false),
                'menu_position' => 50,
            ));
            register_taxonomy('location','blocks',array(
                'hierarchical' => true,
                'labels' => array(
                    'name' => __( 'Locations' ),
                    'singular_name' => __( 'Location' ),
                    'add_new_item' => 'Add New Location',
                    'edit_item' => 'Edit Location',
                    'new_item' => 'New Location',
                    'search_items' => 'Search Location',
                    'not_found' => 'No Location found',
                    'not_found_in_trash' => 'No Locations found in trash',
                    'all_items' => __( 'All Locations' ),
                ),
                'query_var' => true,
                'rewrite' => array( 'slug' => 'location' ),
            ));
            register_taxonomy('section','blocks',array(
                'hierarchical' => true,
                'labels' => array(
                    'name' => __( 'Sections' ),
                    'singular_name' => __( 'Section' ),
                    'add_new_item' => 'Add New Section',
                    'edit_item' => 'Edit Section',
                    'new_item' => 'New Section',
                    'search_items' => 'Search Section',
                    'not_found' => 'No Sections found',
                    'not_found_in_trash' => 'No Sectionss found in trash',
                    'all_items' => __( 'All Sections' ),
                ),
                'query_var' => true,
                'rewrite' => array( 'slug' => 'section' ),
            ));
            // Add initial terms
            if (!get_option('yoursite-blocks-initialized')) {
                $terms = array(
                    'Intro',
                    'Tagline',
                    'Mainbar',
                    'Sidebar',
                    'Featured',
                    'Content',
                );
                foreach($terms as $term) {
                    if (!get_term_by('name',$term,'section')) {
                        wp_insert_term($term, 'section');
                    }
                }
                update_option('yoursite-blocks-initialized',true);
            }
        }
        // Arrange the position of elements in the table
            add_filter('manage_blocks_posts_columns', 'manage_blocks_posts_columns');

        function manage_blocks_posts_columns($columns) {
            $columns = array(
                'cb' => '<input type="checkbox" />',
                'title' => 'Name',
                'location_column' => 'Location',
                'section_column' => 'Section',
                'author' => 'Author',
                'date' => 'Date',
            );
            return $columns;
        }
        // Verify that we are indeed working with only the custom post type and use a switch statement to test against the column
            add_filter('manage_posts_custom_column', 'manage_posts_custom_column');

        function manage_posts_custom_column( $column,$post_id ) {
            global $typenow;
            if ($typenow=='blocks') {
                $location_taxonomy = 'location';
                $section_taxonomy = 'section';
                switch ($column) {
                case 'location_column':
                    $location_column = get_the_terms($post_id,$location_taxonomy);
                    if (is_array($location_column)) {
                        foreach($location_column as $key => $location) {
                            $edit_link = get_term_link($location,$location_taxonomy);
                            $location_column[$key] = '<a href="'.$edit_link.'">' . $location->name . '</a>';
                        }
                        echo implode(' | ',$location_column);
                    }
                    break;
                case 'section_column':
                    $section_column = get_the_terms($post_id,$section_taxonomy);
                    if (is_array($section_column)) {
                        foreach($section_column as $key => $section) {
                            $edit_link = get_term_link($section,$section_taxonomy);
                            $section_column[$key] = '<a href="'.$edit_link.'">' . $section->name . '</a>';
                        }
                        echo implode(' | ',$section_column);
                    }
                    break;
                }
            }
        }
        // Output multiple taxonomy filters
            add_action('restrict_manage_posts' ,'restrict_manage_posts');

        function restrict_manage_posts() {

            // Only display these taxonomy filters on desired custom post_type listings
            global $typenow;
            if ($typenow == 'blocks') {

                // Create an array of taxonomy slugs you want to filter by - if you want to retrieve all taxonomies, could use get_taxonomies() to build the list
                $filters = array('location', 'section');

                foreach ($filters as $tax_slug) {
                    // Retrieve the taxonomy object
                    $tax_obj = get_taxonomy($tax_slug);
                    $tax_name = $tax_obj->labels->name;
                    // Retrieve array of term objects per taxonomy
                    $terms = get_terms($tax_slug);

                    // Output html for taxonomy dropdown filter
                    echo "<select name='$tax_slug' id='$tax_slug' class='postform'>";
                    echo "<option value=''>Show All $tax_name</option>";
                    foreach ($terms as $term) {
                        // Output each select option line, check against the last $_GET to show the current option selected
                        echo '<option value='. $term->slug, $_GET[$tax_slug] == $term->slug ? ' selected="selected"' : '','>' . $term->name .' (' . $term->count .')</option>';
                    }
                    echo "</select>";
                }
            }
        }

Tôi đang thiếu lập luận nào?


Tại sao tôi nhận được 5 câu hỏi bỏ phiếu liên tiếp? Tôi đang có một khoảng thời gian xui xẻo?
janoChen

Câu trả lời:


12

Thay đổi dòng 93 từ

add_filter('manage_posts_custom_column', 'manage_posts_custom_column');

đến

add_filter('manage_posts_custom_column', 'manage_posts_custom_column', 10, 2);

Đối số thứ tư xác định có bao nhiêu đối số mà hàm manage_posts_custom_columnchấp nhận (một mặc định).

Tiền mã hóa: add_filter()


cái này 10để làm gì
Francisco Corrales Morales

1
10 xác định mức độ ưu tiên của bộ lọc. codex.wordpress.org/Function_Reference/add_filter
psorensen
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.