J'ai un type de message personnalisé créé pour un répertoire qui finira par être trié par ordre alphabétique. Je vais trier les articles par ordre alphabétique par titre. Je veux donc m'assurer que le titre est entré comme nom/prénom. Y at-il un moyen de changer ce texte d'aide par défaut - "Entrez le titre ici" - dans mon message personnalisé pour quelque chose d'autre?
Il n'y a aucun moyen de personnaliser cette chaîne explicitement. Mais il passe par la fonction de traduction et est donc facile à filtrer.
Essayez quelque chose comme ça (n'oubliez pas de changer de type de message):
add_filter('gettext','custom_enter_title');
function custom_enter_title( $input ) {
global $post_type;
if( is_admin() && 'Enter title here' == $input && 'your_post_type' == $post_type )
return 'Enter Last Name, Followed by First Name';
return $input;
}
Je sais que je suis un peu en retard à la fête ici, mais je voudrais ajouter que le filtre enter_title_here
a été ajouté spécifiquement à cette fin dans WordPress v3.1.
add_filter( 'enter_title_here', 'custom_enter_title' );
function custom_enter_title( $input ) {
if ( 'your_post_type' === get_post_type() ) {
return __( 'Enter your name here', 'your_textdomain' );
}
return $input;
}
Modifiez your_post_type
et your_textdomain
pour qu'ils correspondent à votre propre nom de type de message et à votre domaine de texte.
Désolé de creuser cette question depuis Grave, mais il existe une meilleure solution depuis WordPress 3.1. Le filtre enter_title_here
.
function change_default_title( $title ){
$screen = get_current_screen();
// For CPT 1
if ( 'custom_post_type_1' == $screen->post_type ) {
$title = 'CPT1 New Title';
// For CPT 2
} elseif ( 'custom_post_type_2' == $screen->post_type ) {
$title = 'CPT2 New Title';
// For Yet Another CPT
} elseif ( 'custom_post_type_3' == $screen->post_type ) {
$title = 'CPT3 New Title';
}
// And, so on
return $title;
}
add_filter( 'enter_title_here', 'change_default_title' );
Jetez un coup d’œil dans wp-admin/edit-form-advanced.php
à la ligne 246 (ligne 329, à partir du WP3.5)
<label class="screen-reader-text" id="title-Prompt-text" for="title">
<?php echo apply_filters( 'enter_title_here', __( 'Enter title here' ), $post ); ?>
</label>
Le meilleur moyen d'obtenir le format de titre souhaité est de supprimer complètement le titre et d'ajouter deux champs personnalisés pour les parties de nom avec les étiquettes appropriées. Lorsque le message est enregistré, créez le titre par PHP.