Redenumirea unei secțiuni din wp-admin

De-a lungul timpului am tot făcut tot felul de site-uri bazate pe WordPress. De la simple bloguri până la site-uri de mari agenții web. Prin urmare, am fost nevoit să improvizez și să adaptez de nenumărate ori. Când au apărut custom taxonomy și custom post type am simțit un fel de binecuvântare. Nu mai trebuia să mă lupt cu custom fields și alte bucurii d’astea.

Și, cu toate acestea, o chestie enervantă căreia nu îi găseam soluție a fost redenumirea secțiunilor implicite din wp-admin. Cea care îmi stătea ca un ghimpe în coaste fiind fix secțiunea Posts. La o adică, ce să caute o astfel de secțiune într-un site de prezentare de rochii, de exemplu? Prima soluție, cea mai la îndemână, a fost să-i spun clientului: „nu te atinge de partea aia!”. Cum limitarea unui utilizator cu care eu nu aveam contact (de obicei lanțul arată cam așa: eu -> clientul meu (agenție) -> clientul agenției -> clientul final) ieșea din discuție (se știe că telefonul fără fir a avut întotdeauna un succes răsunător), a trebuit să găsesc o altă modalitate. Una ceva mai… user friendly ce nu instigă la click-uri aiurea.

Încercarea nr 2

A doua soluție – cea pe care am și folosit-o la câteva proiecte – a fost să îi spun clientului meu: transmite-i că secțiunea „posts” este pentru știri (sau ce era nevoie la proiectul respectiv). Treaba a mers fără probleme la vreo patru sau cinci proiecte dar, zilele trecute am dat peste o treabă foarte simplă ce face fix ce aveam nevoie: redenumește secțiunea „Posts” în ce am eu nevoie.

Încercarea nr. 3

Simplu și eficient. Fără mare bătaie de cap, pui asta în functions.php, eventual schimbi textele cu ce ai nevoie și… aia e!

function change_post_menu_label() {
	global $menu, $submenu;
	$menu[5][0] = 'News';
	$submenu['edit.php'][5][0] = 'News';
	$submenu['edit.php'][10][0] = 'Add News';
	$submenu['edit.php'][16][0] = 'News Tags';
	echo '';
}
function change_post_object_label() {
	global $wp_post_types;
	$labels = &$wp_post_types['post']->labels;
	$labels->name = 'News';
	$labels->singular_name = 'News';
	$labels->add_new = 'Add News';
	$labels->add_new_item = 'Add News';
	$labels->edit_item = 'Edit News';
	$labels->new_item = 'News';
	$labels->view_item = 'View News';
	$labels->search_items = 'Search News';
	$labels->not_found = 'No News found';
	$labels->not_found_in_trash = 'No News found in Trash';
}
add_action( 'init', 'change_post_object_label' );
add_action( 'admin_menu', 'change_post_menu_label' );

4 Comentarii to “Redenumirea unei secțiuni din wp-admin”

  1. Dar cum se poate ca functions.php (care e în temă) să afecteze wp-admin. Din câte știam eu, cele două nu au nicio legătură între ele…

  2. Staicu Ionuț-Bogdan

    Andrei, din functions.php ai acces la absolut toate hook-urile existente în wordpress.
    Iar iar ce e agățat de hook-ul init se execută prima dată, înainte de orice altceva, dar după ce s-au inițializat variabilele wp.

  3. foarte buna modificarea. thanks

Show trackbacks

Ți-a plăcut articolul? Lasă un comentariu!

You can insert code snippets using BBcode:
[js].[/js] [html].[/html] [php].[/php] [css].[/css]
You can also use some HTML tags:
<blockquote>.</blockquote> <code>.</code> <a href="">.</a> <strong>.</strong> <em>.</em>