Mostrar ID del autor en author.php

1 dic 2011, 12:25:43
Vistas: 23.9K
Votos: 14

Esta es probablemente una pregunta muy simple.

Pero, ¿cómo muestro el ID de un usuario en author.php?

He intentado

the_author_meta('ID')

Pero parece que no funciona. Quiero mostrarlo al final de una URL, por ejemplo:

http:///www.domain.com/author/sampleauthor-id

Obviamente, donde "id" es el ID de ese autor en particular

¿Alguna idea?

Puedes usar cualquiera de estas opciones:

// Opción 1: Usando get_queried_object()
$author = get_queried_object();
echo $author->ID;

// Opción 2: Usando get_the_author_meta()
echo get_the_author_meta('ID');

// Opción 3: Usando get_query_var()
echo get_query_var('author');
1
Comentarios

No los enlaces permanentes, es para una versión modificada del plugin UserPhoto.

Quiero codificar manualmente un enlace de imagen específico en author.php y como las imágenes de cada usuario se añaden con su ID de autor, necesito incluir eso en el enlace

Dean Elliott Dean Elliott
1 dic 2011 12:54:36
Todas las respuestas a la pregunta 3
7
31

Prueba este código.

$author = get_user_by( 'slug', get_query_var( 'author_name' ) );
echo $author->ID;

Alternativamente, si el nombre del autor no está configurado, usa:

if ( $author_id = get_query_var( 'author' ) ) { $author = get_user_by( 'id', $author_id ); }

crédito @AndyAdams en los comentarios fáciles de pasar por alto abajo

1 dic 2011 12:54:52
Comentarios

Esto me da un error 500 de servidor interno

Dean Elliott Dean Elliott
1 dic 2011 13:01:41

¿Estás seguro de que es por el código anterior... podrías mostrarme tu author.php?

Joshua Abenazer Joshua Abenazer
1 dic 2011 13:05:26

$author = get_user_by( 'slug', get_query_var( 'author_name' ) ); no dio problemas, fue el echo author->ID; lo que causó el error por alguna razón

Dean Elliott Dean Elliott
1 dic 2011 13:07:04

Ups, hay un error tipográfico... es echo $author->ID... fíjate en el '$'. Respuesta actualizada.

Joshua Abenazer Joshua Abenazer
1 dic 2011 13:08:28

Ambos se olvidaron del signo de dólar. echo $author->ID;

Johannes Pille Johannes Pille
1 dic 2011 13:09:24

¡¡Perfecto!! Debí haber notado que faltaba el $, error mío. ¡Muchas gracias, tío!

Dean Elliott Dean Elliott
1 dic 2011 13:11:19

Esto solo funcionará si author_name está configurado. Sin enlaces permanentes bonitos, también necesitarás verificar la variable de consulta author: if ( $author_id = get_query_var( 'author' ) ) { $author = get_user_by( 'id', $author_id ); }

Andy Adams Andy Adams
19 dic 2012 22:45:09
Mostrar los 2 comentarios restantes
1
11

Prueba este sencillo código

if (is_author()){
    $author = get_queried_object();
    $author_id = $author->ID;
}
26 ene 2017 09:07:01
Comentarios

Una forma más sencilla de hacer esto sería $author_id = get_queried_object_id();

Gavin Gavin
17 nov 2017 22:20:15
0

si var_dump(the_author_meta('ID')) devuelve Null tu autor no tiene publicaciones.

Prueba usar echo $author si lo llamas dentro de author.php

27 abr 2017 01:37:12