Foros del Web » Programando para Internet » PHP »

Que le falta a este código, me da error

Estas en el tema de Que le falta a este código, me da error en el foro de PHP en Foros del Web. Estoy intentando en un php funtions que en ciertas categorias aparezca la fecha de los artículos y en otras que aparezca el autor. Tengo este ...
  #1 (permalink)  
Antiguo 28/12/2013, 08:22
Avatar de Scape  
Fecha de Ingreso: octubre-2006
Mensajes: 626
Antigüedad: 14 años, 7 meses
Puntos: 7
Que le falta a este código, me da error

Estoy intentando en un php funtions que en ciertas categorias aparezca la fecha de los artículos y en otras que aparezca el autor.

Tengo este código, pero me da error, y no se que le falta o sobra, me podéis ayudar por favor a que funcione?

function admired_posted_on() { if ( in_category( '18' ) )
printf( __( '<span class="sep"></span><time class="entry-date" datetime="%3$s" pubdate>%4$s</time></span>', 'admired' ),
esc_url( get_permalink() ),
esc_attr( get_the_time() ),
esc_attr( get_the_date( 'c' ) ),
esc_html( get_the_date() ),
esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ),
sprintf( esc_attr__( 'View all posts by %s', 'admired' ), get_the_author() ),
esc_html( get_the_author() )
);
}

elseif ( in_category ('15', '20') ) {
printf( __( '<span class="by-author"> <span class="sep"> by </span> <span class="author vcard">%7$s</span></span>', 'admired' ),
esc_url( get_permalink() ),
esc_attr( get_the_time() ),
esc_attr( get_the_date( 'c' ) ),
esc_html( get_the_date() ),
esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ),
sprintf( esc_attr__( 'View all posts by %s', 'admired' ), get_the_author() ),
esc_html( get_the_author() )
);
}

endif;
  #2 (permalink)  
Antiguo 28/12/2013, 09:13
Avatar de moriorGames  
Fecha de Ingreso: diciembre-2013
Ubicación: Barcelona
Mensajes: 37
Antigüedad: 7 años, 5 meses
Puntos: 3
Respuesta: Que le falta a este código, me da error

Al final pones un endif; que no pinta nada.

¿Qué tal así? No lo he probado pero debería funcionar ^^

Código PHP:
<?php
function admired_posted_on() {
    if ( 
in_category'18' ) ) {

        
printf__'<span class="sep"></span><time class="entry-date" datetime="%3$s" pubdate>%4$s</time></span>''admired' ),
        
esc_urlget_permalink() ),
        
esc_attrget_the_time() ),
        
esc_attrget_the_date'c' ) ),
        
esc_htmlget_the_date() ),
        
esc_urlget_author_posts_urlget_the_author_meta'ID' ) ) ),
        
sprintfesc_attr__'View all posts by %s''admired' ), get_the_author() ),
        
esc_htmlget_the_author() ) );

    } elseif ( 
in_category ('15''20') ) {

        
printf__'<span class="by-author"> <span class="sep"> by </span> <span class="author vcard">%7$s</span></span>''admired' ),
        
esc_urlget_permalink() ),
        
esc_attrget_the_time() ),
        
esc_attrget_the_date'c' ) ),
        
esc_htmlget_the_date() ),
        
esc_urlget_author_posts_urlget_the_author_meta'ID' ) ) ),
        
sprintfesc_attr__'View all posts by %s''admired' ), get_the_author() ),
        
esc_htmlget_the_author() ) );
    }
}
__________________
Mi juego de estrategia medieval si lo entras hazme llegar tu opinión por favor, siempre la tengo en cuenta.
  #3 (permalink)  
Antiguo 28/12/2013, 09:28
Avatar de Scape  
Fecha de Ingreso: octubre-2006
Mensajes: 626
Antigüedad: 14 años, 7 meses
Puntos: 7
Respuesta: Que le falta a este código, me da error

Cita:
Iniciado por moriorGames Ver Mensaje
Al final pones un endif; que no pinta nada.

¿Qué tal así? No lo he probado pero debería funcionar ^^

Código PHP:
<?php
function admired_posted_on() {
    if ( 
in_category'18' ) ) {

        
printf__'<span class="sep"></span><time class="entry-date" datetime="%3$s" pubdate>%4$s</time></span>''admired' ),
        
esc_urlget_permalink() ),
        
esc_attrget_the_time() ),
        
esc_attrget_the_date'c' ) ),
        
esc_htmlget_the_date() ),
        
esc_urlget_author_posts_urlget_the_author_meta'ID' ) ) ),
        
sprintfesc_attr__'View all posts by %s''admired' ), get_the_author() ),
        
esc_htmlget_the_author() ) );

    } elseif ( 
in_category ('15''20') ) {

        
printf__'<span class="by-author"> <span class="sep"> by </span> <span class="author vcard">%7$s</span></span>''admired' ),
        
esc_urlget_permalink() ),
        
esc_attrget_the_time() ),
        
esc_attrget_the_date'c' ) ),
        
esc_htmlget_the_date() ),
        
esc_urlget_author_posts_urlget_the_author_meta'ID' ) ) ),
        
sprintfesc_attr__'View all posts by %s''admired' ), get_the_author() ),
        
esc_htmlget_the_author() ) );
    }
}
Pues ahora no da error, pero en las categorías que nombro para que aparezca autor, no aparece.

Arg no consigo hacer esto


Ah vale, veo que el problema es este in_category ('15', '20') , no se pueden poner aquí dos categorías? Si pongo solo una si aparece, en dos no.
  #4 (permalink)  
Antiguo 28/12/2013, 09:32
Avatar de moriorGames  
Fecha de Ingreso: diciembre-2013
Ubicación: Barcelona
Mensajes: 37
Antigüedad: 7 años, 5 meses
Puntos: 3
Respuesta: Que le falta a este código, me da error

Bueno, yo te he arreglado los errores de sintaxis que había, la lógica de la aplicación debe correr de tu cuenta. Desde luego no tengo acceso a suficiente información como para poder ayudarte más a fondo. Aunque estoy viendo que trabajas con wordpress y creo que deberías mirar en la propia documentación de esas funciones de wordpress para encontrar la solución a tu problema.
__________________
Mi juego de estrategia medieval si lo entras hazme llegar tu opinión por favor, siempre la tengo en cuenta.
  #5 (permalink)  
Antiguo 28/12/2013, 09:40
Avatar de Scape  
Fecha de Ingreso: octubre-2006
Mensajes: 626
Antigüedad: 14 años, 7 meses
Puntos: 7
Respuesta: Que le falta a este código, me da error

Cita:
Iniciado por moriorGames Ver Mensaje
Bueno, yo te he arreglado los errores de sintaxis que había, la lógica de la aplicación debe correr de tu cuenta. Desde luego no tengo acceso a suficiente información como para poder ayudarte más a fondo. Aunque estoy viendo que trabajas con wordpress y creo que deberías mirar en la propia documentación de esas funciones de wordpress para encontrar la solución a tu problema.
Te agradezco mucho todo, ya pude arreglarlo, solo que no se por que no aparecen en varias categorias, solo en una.

Pero seguiré investigando como tu dices en documentación de wordpress.

Me has ayudado mucho y de verdad que te lo agradezco,
  #6 (permalink)  
Antiguo 28/12/2013, 09:58
Avatar de moriorGames  
Fecha de Ingreso: diciembre-2013
Ubicación: Barcelona
Mensajes: 37
Antigüedad: 7 años, 5 meses
Puntos: 3
Respuesta: Que le falta a este código, me da error

De nada, para servir estamos :)
__________________
Mi juego de estrategia medieval si lo entras hazme llegar tu opinión por favor, siempre la tengo en cuenta.

Etiquetas: falta, fecha, html
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 04:17.