Mesaj başlığı WordPress Mesaj kimliği alın

8 Cevap php

Ben geliştiriyorum özel bir WordPress teması ile bir sorunu var. Biraz dolambaçlı, ama aslında, ne yapmam gerekiyor bu post Başlığı bulunuyor tarafından bir post kimliği olsun. Pseudo-code bu ideal gibi bir şey olurdu:

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

Sözü Başlık WordPress dan çekilmektedir statik bir referans, bu sayfada zaten mevcut bulunuyor.

Şimdiden teşekkürler.

8 Cevap

Başkasının bu ile mücadele eğer bir çözüm bulundu. Sadece 4 saatlik test / Googling sonra dışarı çaresizlik soru yayınlanmıştır!

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;
}

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

Gibi Michal Mau bahsetti:

Kullanım

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

Bu ( $page_title, $output, $post_type ) kolayca yerine bir sayfa bir yazı almak bulunuyor.

Eğer [link] başı olarak aşağıdaki kodu kullanabilirsiniz [http://codex.wordpress.org/Function_Reference/get_page_by_title] 1)!

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

Sonrası ve sayfa numarası almak için başka bir yol, bir eklenti kullanmak için ..

bir eklenti sadece ne, sadece tüm sayfalar, tüm mesajların, tüm kategoriler tabloları bir sütun eklemek, ve kimliği bir sütun başlığı var ... ve hemen aşağıda, tüm sayfa / yazı göreceksiniz ki, orada Bu sütunda listelenen id ..

Ben çok yararlı olması gerektiğini düşünüyorum ..

Ben çok sık bu eklentiyi kullanmak ve çok hafiftir.

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

SQL querys veya eklenti her türlü kullanmaya gerek yok, bunun için Wordpress standart fonksiyonlarını kullanmak

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

Ayrıca,

$titlee = "yourtitle";
$id = $wpdb->get_var("SELECT ID FROM $wpdb->posts WHERE post_name = $titlee");
echo $id;

it wp sorgusu kullanarak yazılan başlıktan sonrası kimliği almak kolaydır:

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;

Ayrıca, birbirinden farklılık post_title ve post_name. post_name belki sülük olduğunu. POST_TITLE yazının başlığıdır.