it-swarm-vi.com

Đổi tên Mục menu trong Phần Menu của Quản trị viên cho Loại bài đăng tùy chỉnh?

Tôi có cảm giác đây là một lỗi.

Khi bạn tạo một loại bài đăng tùy chỉnh mới, dường như không thể sửa đổi văn bản mục con đầu tiên. Tôi đang đề cập đến liên kết cho phép bạn xem danh sách bài viết.

Đối với những gì tôi có thể nói nó dường như đang sao chép tên tên của menu loại bài đăng chính đã được tạo.

Có ai biết cách sửa đổi văn bản này để tôi có thể có thành phần menu chính nói "Bài viết" và tên menu con danh sách bài đăng để nói "Quản lý bài viết" ?

Tôi có ấn tượng rằng "edit_item" sẽ điều khiển văn bản được hiển thị trong menu con te nhưng vì một số lý do, điều này không được đăng ký.

Đây là mã tôi hiện đang sử dụng:

//////////////////////////////////////////////////////////////////////////////
// CUSTOM POSTTYPE FOR -- ARTICLES  
//////////////////////////////////////////////////////////////////////////////

add_action('init', 'articles');
function articles() {
 register_post_type('articles', array(
  'labels' => array(
   'name'   => __('Articles'),
   'singular_label'  => __('Article'),
   'new_item'   => __('Add Article'),
   'add_new'   => __('Add Article'),
   'add_new_item'  => __('Add Article'),
   'edit'   => __('Edit Article'),
   'edit_item'   => __('Edit Article'),
   'view'   => __('View Article'),
   'view_item'   => __('View Article'),
   'search_items'  => __('Search Articles'),
   'not_found'   => __('No Articles Found'),
   'not_found_in_trash' => __('No Articles Found in Trash'),
   ),
  'supports' => array(
   'thumbnail',
   'title',
   'editor',
   'author',
   'revisions',
   ),
  'rewrite' => array( 
   'slug'   => 'articles', 
   'with_front'   => false,
   ),
  'rewrite'    => true,
  'can_export'    => true,
  'show_ui'    => true,
  'menu_position'   => 3,
  'public'    => true,
  'query_var'    => true,
  'publicly_queryable'  => true,
  'exclude_from_search'  => false,
  'capability_type'   => 'post',
  'hierarchical'   => false,
 ));
 }


add_filter('manage_edit-articles_columns', 'add_new_articles_columns');
function add_new_articles_columns($articles_columns) {
 $new_columns['cb']     = '<input type="checkbox" />';
 $new_columns['article_thumbnail']   = _x('Image', 'column name');
 $new_columns['title']    = _x('Article Title', 'column name');
 $new_columns['article_excerpt']   = _x('Article Excerpt', 'column name');
 $new_columns['article_source']   = _x('Article Source', 'column name');
 $new_columns['author']    = __('Created by');
 $new_columns['date']    = _x('Last Action', 'column name');
 return $new_columns;
 }
add_action('manage_posts_custom_column', 'manage_articles_columns', 10, 2);
function manage_articles_columns($column_name, $id) {
 global $wpdb;
 switch ($column_name) { 
  case 'article_thumbnail':  
   the_post_thumbnail( array(50,50) );
   break; 
  case 'article_excerpt': echo substr(get_the_excerpt(),0,500); 
   break;
  case 'article_source':
         echo get_the_term_list($post->ID, 'content_sources', '', ', ','');
   break;
  default: break;
  }
 }
3
NetConstructor.com

Xin chào @ NetConstructor.com :

Tôi nghĩ rằng bạn đã hỏi về điều này và tôi đã cho bạn một câu trả lời cũng sẽ giải quyết câu hỏi này:

Trong câu trả lời đó tôi đã cho bạn một thư viện bạn có thể sử dụng để giúp tương tác với các menu quản trị viên cực dễ dàng . Đây là những gì bạn phải làm để đạt được mục tiêu đã nêu của bạn về câu hỏi này:

<?php
require_once('wp-admin-menu-classes.php');
add_action('admin_menu','my_admin_menu');
function my_admin_menu() {
  rename_admin_menu_section('Articles','Manage Articles');`  
}

P.S. BTW, tôi nhận thấy có 4 câu trả lời được cung cấp cho câu hỏi đó mà bạn đã hỏi gần một tuần trước, nhưng bạn đã không quay lại bất kỳ câu hỏi nào được chọn câu trả lời là câu trả lời đúng Vì bạn đã ở đây để hỏi rất nhiều câu hỏi, tôi biết không giống như bạn không ở đây; vui lòng dành thời gian để chọn câu trả lời tốt nhất cho câu hỏi của bạn ngay khi bạn có câu trả lời khả thi nếu không mọi người có thể trở nên mất hứng thú để tiếp tục trả lời. Một cái gì đó xem xét ...

1
MikeSchinkel

Đây là một vấn đề ngữ nghĩa.

'edit_item'   => __('Edit Article'),

Đây là những gì được hiển thị khi bạn chỉnh sửa bài viết, như ở số ít, giống như bài chỉnh sửa, trong tiêu đề hàng đầu. Lý do mà mục trình đơn liệt kê 'bài viết được gọi là' bài đăng 'chứ không phải' chỉnh sửa bài đăng 'là vì điều đó sẽ gây hiểu nhầm.

Bạn có thể làm nhiều hơn là chỉ chỉnh sửa bài đăng, bạn có thể xóa và di chuyển chúng, v.v ... Điều tương tự cũng đúng với các trang hoặc bất kỳ loại bài đăng nào bạn có thể có. Đây là lý do tại sao cùng một trường được sử dụng cho menu phần cũng được sử dụng cho mục menu con ban đầu. Có logic thực sự cho nó. Phải nói rằng không có gì ngăn bạn đặt 'show_ui' => true, thành false và tự thực hiện nó.

Tuy nhiên, nếu bạn thực sự muốn chỉnh sửa nó vì bất kỳ lý do gì, bạn sẽ cần thêm một hook vào hàm.php để xử lý menu sau đó, bằng cách tìm kiếm mục menu con cần thiết trong mảng và thay đổi tên của nó.

Một cái gì đó dọc theo những dòng này sẽ làm, mặc dù nó có thể cần một số sửa đổi:

function edit_menus() {
    global $menu;
    end ($menu);
    while (prev($menu)){
        $value = explode(' ',$menu[key($menu)][0]);
        if(strpos($menu[key($menu)], "menu name" )){
            $menu[key($menu)] = str_replace("menu name", "newmenuname", $menu[key($menu)]);
            break;
        }
    }
}
add_action('admin_menu', 'edit_menus');
2
Tom J Nowell