it-swarm.com.de

Holen Sie sich die WordPress-Beitrags-ID vom Beitragstitel

Ich habe ein Problem mit einem benutzerdefinierten WordPress-Theme, das ich entwickle. Es ist ein bisschen verworren, aber im Wesentlichen muss ich eine Post-Id über den Post-Titel bekommen. Im Pseudo-Code würde es im Idealfall so aussehen:

title = "foo";
post_id = get_post_id_where_title_is(title);

Der erwähnte Titel ist eine statische Referenz, die nicht aus WordPress übernommen wurde, sondern bereits auf der Seite vorhanden ist.

Danke im Voraus.

45
Aaron

Nur eine kurze Notiz für alle, die darüber stolpern:
get_page_by_title () kann jetzt jeden Beitragstyp verarbeiten.
Der $post_type-Parameter wurde in WP 3.0 hinzugefügt.

85
Michal Mau

Hat eine Lösung gefunden, wenn jemand anderes damit zu kämpfen hat. Erst nach 4 Stunden Test/Googling die Frage aus Verzweiflung gestellt!

function get_post_by_title($page_title, $output = OBJECT) {
    global $wpdb;
        $post = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM $wpdb->posts WHERE post_title = %s AND post_type='post'", $page_title ));
        if ( $post )
            return get_post($post, $output);

    return null;
}

Gefunden bei: http://sudarmuthu.com/blog/2009/09/18/retrieving-posts-and-pages-based-on-title-in-wordpress.html

19
Aaron

Wie Michal Mau erwähnt:

Benutzen

$my_post = get_page_by_title( 'My Title', OBJECT, 'post' );
echo $my_post->post_content;

Es ist ( $page_title, $output, $post_type ), um einfach einen Beitrag anstelle einer Seite zu erhalten.

7
BrainBUG

Möge dies Ihnen mehr helfen, indem Sie Funktionen erstellen, damit Sie den Code nicht wiederholen müssen

function get_page_id_by_title($title)
{
$page = get_page_by_title($title);
return $page->ID;
}

$title = "your title";
get_page_id_by_title($title);
2
Kundan SIngh

sie können den folgenden Code als [Link] [http://codex.wordpress.org/Function_Reference/get_page_by_title] 1 ) verwenden!

<?php 
$page = get_page_by_title( 'About' );
wp_list_pages( 'exclude=' . $page->ID );
?>
1
Ramkumar

es ist einfach, die Beitrags-ID aus dem Beitragstitel mithilfe der WP-Abfrage zu erhalten:

global $wpdb;

$rw = $wpdb->get_row( $wpdb->prepare("select * from "your post table name" where post_title='your variable name or your post title'"));

echo $rw->ID;
0
Omdev

1) unterscheiden sich post_title und post_name voneinander. post_name ist vielleicht der Slug. post_title ist der Titel des Beitrags.

2) 

$titlee = "yourtitle";
echo $id = $wpdb->get_var("SELECT ID FROM $GLOBALS['wpdb']->posts WHERE post_name = $titlee");
0
T.Todua

Eine andere Möglichkeit, die Post- und Seiten-ID zu erhalten, ist die Verwendung eines Plugins.

es gibt ein Plugin, das, was es einfach tut, ist, einfach eine Spalte zu allen Seiten, allen Beiträgen, allen Kategorietabellen und einem Spaltentitel der ID hinzuzufügen ... und rechts darunter sehen Sie alle Seiten/Beiträge ID in dieser Spalte aufgeführt ..

Ich denke das sollte sehr nützlich sein ..

Ich benutze dieses Plugin sehr häufig und es ist sehr leicht.

http://getyourblogready.com/?p=758

0
user1470261

Es müssen keine SQL-Abfragen oder Plugins verwendet werden. Verwenden Sie dazu die Standardfunktionen von Wordpress

$page = get_page_by_title( 'Home' );
$page_id = $page->ID;
0
Erik Larsson