Cambiar el texto de ayuda "Ingresar título aquí" en un tipo de publicación personalizada

20

Tengo un tipo de publicación personalizado creado para un directorio que terminará ordenándose alfabéticamente. Ordenaré las publicaciones en orden alfabético por título, por lo que quiero asegurarme de que el Título se ingrese como apellido / nombre. ¿Hay alguna forma de cambiar el texto de ayuda predeterminado "Ingresar título aquí" en mi publicación personalizada?

    
pregunta John Chandler 12.01.2011 - 19:10

5 respuestas

19

No hay forma de personalizar esa cadena explícitamente. Pero se pasa a través de la función de traducción y, por lo tanto, es fácil de filtrar.

Prueba algo como esto (no olvides cambiar tu tipo de publicación):

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;
}
    
respondido por el Rarst 12.01.2011 - 19:19
33

Sé que llego un poco tarde a la fiesta aquí, pero me gustaría agregar que enter_title_here el filtro se agregó específicamente para este propósito en 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;
}

Cambie your_post_type y your_textdomain para que coincidan con su propio nombre de tipo de publicación y dominio de texto.

    
respondido por el Dave Romsey 25.03.2011 - 03:40
6

Lamento desenterrar esta pregunta de la tumba, pero hay una mejor solución desde WordPress 3.1. El filtro 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' );
    
respondido por el Abhik 23.05.2014 - 09:32
5

Eche un vistazo a wp-admin/edit-form-advanced.php en la línea 246 (línea 329, a partir de 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>
    
respondido por el Martin-Al 12.01.2011 - 19:14
2

La mejor manera de obtener el formato de título que desea es eliminar el título completamente y agregar dos campos personalizados para las partes de nombre con las etiquetas adecuadas. Cuando la publicación esté guardada, cree el título por PHP.

    
respondido por el fuxia 12.01.2011 - 23:20

Lea otras preguntas en las etiquetas