web-dev-qa-db-fra.com

Utiliser le domaine de texte par défaut de WordPress pour la traduction des étiquettes

Je me demande s’il existe un moyen d’utiliser le domaine de texte "par défaut" ("WordPress" ou "par défaut") pour traduire les étiquettes. E.g j'ai le code suivant:

// Register Custom Taxonomy
function custom_taxonomy() {

$labels = array(
    'name'                       => _x( 'Press category', 'Taxonomy General Name', 'my_text_domain' ),
    'singular_name'              => _x( 'Press category', 'Taxonomy Singular Name', 'my_text_domain' ),
    'menu_name'                  => __( 'Pressekateorien', 'my_text_domain' ),
    'all_items'                  => __( 'All Items' ),
    'parent_item'                => __( 'Parent Item' ),
    'parent_item_colon'          => __( 'Parent Item:' ),
    'new_item_name'              => __( 'New Item Name' ),
    'add_new_item'               => __( 'Add New Item' ),
    'edit_item'                  => __( 'Edit Item' ),
    'update_item'                => __( 'Update Item' ),
    'view_item'                  => __( 'View Item' ),
    'separate_items_with_commas' => __( 'Separate items with commas' ),
    'add_or_remove_items'        => __( 'Add or remove items' ),
    'choose_from_most_used'      => __( 'Choose from the most used' ),
    'popular_items'              => __( 'Popular Items' ),
    'search_items'               => __( 'Search Items' ),
    'not_found'                  => __( 'Not Found' ),
);
$args = array(
    'labels'                     => $labels,
    'hierarchical'               => true,
    'public'                     => true,
    'show_ui'                    => true,
    'show_admin_column'          => true,
    'show_in_nav_menus'          => true,
    'show_tagcloud'              => false,
);
register_taxonomy( 'category_press', array( 'press' ), $args );

}

// Hook into the 'init' action
add_action( 'init', 'custom_taxonomy', 0 );

Comme vous pouvez le constater, je ne traduis que 3 chaînes ("name", "singular name" et "menu_name" avec my_text_domain , les autres doivent être traduit par le domaine de texte par défaut que WordPress utilise de toute façon dans le backend). WPML, par exemple, me montre qu'il existe un domaine de texte WordPress . J'ai essayé de l'utiliser aussi, mais ni la valeur par défaut ni WordPress ne fonctionne , par exemple J'ai essayé:

'all_items'                  => __( 'All Items', 'WordPress' ), // doesn't work
'parent_item'                => __( 'Parent Item', 'default' ), // doesn't work

Des allusions?

MERCI!

1
Mike

Si vous ne fournissez aucun domaine texte, les chaînes traduites par WordPress sont utilisées. Si vous utilisez, par exemple, __( 'Add New Tag' );, la traduction du noyau WordPress sera utilisée car 'Add New Tag' existe dans WordPress.

Votre problème est que vous définissez des étiquettes qui n'existent pas dans WordPress, elles ne sont donc incluses dans aucun fichier de traduction WordPress. Je veux dire, les chaînes comme 'All Items' ou 'Popular Items' n'existent pas dans WordPress et ne sont traduites nulle part.

Je pense que mon explication est un peu compliquée, j'espère que vous comprenez ce que je veux dire.

7
cybmeta