Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » WordPress »

Hook para eliminar continue_reading en Twentyten childtheme

Estas en el tema de Hook para eliminar continue_reading en Twentyten childtheme en el foro de WordPress en Foros del Web. Buenas, estoy avanzando con un child-theme de twentyten pero no logro el hook que necesito para eliminar o personalizar esta función Código: function twentyten_continue_reading_link() { ...
  #1 (permalink)  
Antiguo 06/01/2012, 16:07
Avatar de zanguanga
Moderadora
 
Fecha de Ingreso: julio-2009
Ubicación: España
Mensajes: 1.686
Antigüedad: 15 años, 4 meses
Puntos: 429
Hook para eliminar continue_reading en Twentyten childtheme

Buenas, estoy avanzando con un child-theme de twentyten pero no logro el hook que necesito para

eliminar o personalizar esta función

Código:
function twentyten_continue_reading_link() {
    return ' <a href="'. get_permalink() . '">' . __( 'Continue reading <span class="meta-nav">&rarr;</span>', 'twentyten' ) . '</a>';
}
Personalicé el more y excerpt, de esta forma
Código:
//personalizar more
function editMoreLink($link) {
    $link = '<p class="more-container">'.$link.'</p>';
    return $link;
}
 
add_filter('the_content_more_link', 'editMoreLink');

//personalizar excerpt
function excerpt_read_more_link($output) {
 global $post;
 return $output . '<p class="more-container"><a class="excerpt-more-link" href="'. get_permalink($post->ID) . '"> Leer m&aacute;s</a></p>';
}
add_filter('the_excerpt', 'excerpt_read_more_link');
y claro, ahora mismo me sale repetido tal como muestra la siguiente imagen:




Uploaded with ImageShack.us
__________________
Mi blog personal | Mi G+
  #2 (permalink)  
Antiguo 06/01/2012, 21:05
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años, 7 meses
Puntos: 461
Respuesta: Hook para eliminar continue_reading en Twentyten childtheme

es que si te fijas ambas funciones que creaste hacen lo mismo generar un link, lo extraño es que te salgan ambas ya que la primera debería de trabajar es con the_content y la segunda con the_excerpt, de hecho fijate que ambas tienen diferente estilo porque le agregas a la segunda una clase al link, ahora si comentas una de las funciones te da el mismo resultado??
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #3 (permalink)  
Antiguo 07/01/2012, 03:27
Avatar de zanguanga
Moderadora
 
Fecha de Ingreso: julio-2009
Ubicación: España
Mensajes: 1.686
Antigüedad: 15 años, 4 meses
Puntos: 429
Respuesta: Hook para eliminar continue_reading en Twentyten childtheme

Gracias carlos_belisario.

LLeva un estilo, efectivamente, para crear el botón "leer más" y alinear a la derecha.

Si comento la función original de tweentyten de esta forma, obtengo exactamente lo que quiero:

Código:
function twentyten_continue_reading_link() {
    // return ' <a href="'. get_permalink() . '">' . __( 'Continue reading <span class="meta-nav">&rarr;</span>', 'twentyten' ) . '</a>';
}
Por eso quisiera saber como eliminarla desde functions.pphp del tema hijo, para no tener que tocar el archivo del tema padre.

Otras acciones y filtros he podido eliminarlos y modificarlos sin problema, pero esta se me resiste

Es cierto que podría aclarar en un "leame.txt" del tema hijo que se comente esa línea del archivo functions.php padre, pero no me parece una solución limpia. Preferiría un hook que anule esa función, como he conseguido con otras.
__________________
Mi blog personal | Mi G+
  #4 (permalink)  
Antiguo 07/01/2012, 16:37
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años, 7 meses
Puntos: 461
Respuesta: Hook para eliminar continue_reading en Twentyten childtheme

es que no es necesario editar el twentyten_continue_reading_link, de hecho tengo estas dos funciones con ese theme y funciona bien
Código PHP:
Ver original
  1. /**
  2. *
  3. * function para la cantidad de palabras a mostrar
  4. */
  5. function new_excerpt_length($length) {
  6.     return 60;
  7. }
  8. add_filter('excerpt_length', 'new_excerpt_length');
  9.  
  10. /**
  11. *
  12. * function para mostrar el link de leer mas
  13. */
  14. function new_excerpt_more($more) {
  15.        global $post;
  16.     return '[...] <a href="'. get_permalink($post->ID) .'"> Leer más</a> ';
  17. }
  18. add_filter('excerpt_more', 'new_excerp
con esas dos y utilizando the_excerpt() debería de funcionarte.

Pero como te dije antes las dos funciones que hiciste hacen lo mismo generar un link por eso el doble link creo yo, saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #5 (permalink)  
Antiguo 07/01/2012, 20:53
Avatar de zanguanga
Moderadora
 
Fecha de Ingreso: julio-2009
Ubicación: España
Mensajes: 1.686
Antigüedad: 15 años, 4 meses
Puntos: 429
Respuesta: Hook para eliminar continue_reading en Twentyten childtheme

Gracias de nuevo, tu código no me ha servido pero me ha dado la idea de buscar por otro lado.

Después de revisar nuevamente las instrucciones de Tweenty theme acerca de los child themes, lo he podido solucionar finalmente así:

Código:
//eliminar el texto y el enlace de continuar leyendo del excerpt
add_action( 'after_setup_theme', 'my_child_theme_setup' );
function my_child_theme_setup() {
 remove_filter( 'excerpt_more', 'twentyten_auto_excerpt_more' );
}
Muchas gracias por tu interés.
__________________
Mi blog personal | Mi G+
  #6 (permalink)  
Antiguo 08/01/2012, 06:32
 
Fecha de Ingreso: mayo-2011
Mensajes: 256
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: Hook para eliminar continue_reading en Twentyten childtheme

Tengo una duda, cuando se tiene un child-theme y un padre, si quereis cambiar una funcion el padre, porque viene en ingles, como lo que comentais.

Generais un child con el mismo archivo ejemplo , el functions.php y hay generais la funcion que quereis modifica?
Entonces el tema coge la funcion del child o la del padre?

Yo tengo un thema de pago con un child y su padre, pero en la carpeta del child solo hay un estilos.css


Podeis explicarme un poco los pasos basicos. Quiero traducir el template a mano ...

Un saludo

Última edición por phpdevelopment; 08/01/2012 a las 06:45
  #7 (permalink)  
Antiguo 08/01/2012, 07:19
Avatar de zanguanga
Moderadora
 
Fecha de Ingreso: julio-2009
Ubicación: España
Mensajes: 1.686
Antigüedad: 15 años, 4 meses
Puntos: 429
Respuesta: Hook para eliminar continue_reading en Twentyten childtheme

Cita:
Generais un child con el mismo archivo ejemplo , el functions.php y hay generais la funcion que quereis modifica?
Entonces el tema coge la funcion del child o la del padre?
Sí, puedes modificar todos los archivos y crear los tuyos propios. Para eso justamente se hace un child-theme, para no tocar el original y poder actualizar automáticamente todas las funciones principales del theme con cada actualización del theme. Las funciones que añadas o modifiques tú no se actualizarán de forma automática, pero el resto sí.

Aquí tienes la documentación oficial sobre los pasos básicos de un child theme, espero que te sirvan http://codex.wordpress.org/Child_Themes
__________________
Mi blog personal | Mi G+

Etiquetas: post, twentyten, themes
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:50.