Convertir el nombre de un post en su ID

19 jul 2012, 02:32:57
Vistas: 16K
Votos: 0

Estoy intentando crear una función para mi archivo functions.php que me permita convertir el nombre de un post en su ID. He buscado en línea y encontré este enlace http://www.devdevote.com/cms/wordpress-hacks/get_id_by_post_name que proporciona el siguiente ejemplo...

function get_id_by_post_name($post_name)
{
    global $wpdb;
    $id = $wpdb->get_var("SELECT ID FROM $wpdb->posts WHERE post_name = '".$post_name."'");
    return $id;
}

<?php echo get_id_by_post_name('mi-nombre-de-post'); ?>

Después de reemplazar mi-nombre-de-post en el ejemplo, no obtengo ningún resultado, ¿alguien puede sugerir qué está mal?

También estaba investigando la función get_by_postname por si fuera una mejor manera de hacer esto.

0
Todas las respuestas a la pregunta 2
1

Utiliza get_page_by_title(). Funciona con cualquier tipo de publicación.

$post = get_page_by_title( $post_name, OBJECT, 'post' );
echo $post->ID;
19 jul 2012 02:41:38
Comentarios

Ahora estoy tratando de avanzar con esta función y convertirla para que use el nombre de la publicación en lugar del ID. He creado una nueva pregunta en http://wordpress.stackexchange.com/questions/59050/combine-two-functions-highlight-menu-item-by-post-name-instead-of-id - ¿Hay alguna posibilidad de que le eches un vistazo?

fightstarr20 fightstarr20
19 jul 2012 19:21:29
0

Me parece que get_page_by_path() es la función que usarías para buscar por post_name (o una jerarquía separada por barras de ellos), y get_page_by_title() solo funcionaría para post_title.

18 nov 2013 19:57:13