Вы можете сделать это с помощью
$content_post = get_posts(array('name' => 'yourpostname')); // i.e. hello-world
if(count($content_post))
{
$content = $content_post[0]->post_content;
// do whatever you want
echo $content;
}
Update: Также вы можете добавить эту функцию в functions.php
и могут позвонить из любой
function get_post_by_name($post_name, $post_type = 'post', $output = OBJECT) {
global $wpdb;
$post = $wpdb->get_var($wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE post_name = %s AND post_type= %s", $post_name, $post_type));
if ($post) return get_post($post, $output);
return null;
}
// call the function "get_post_by_name"
$content_post = get_post_by_name('hello-world');
if($content_post)
{
$content = $content_post->post_content;
// do whatever you want
echo $content;
}
Update: Чтобы получить пост by название вы можете использовать
// 'Hello World!' is post title here
$content_post = get_page_by_title('Hello World!', OBJECT, 'post');
или вы можете использовать $item->item_title
переменной
$content_post = get_page_by_title($item->item_title, OBJECT, 'post');
if($content_post)
{
$content = $content_post->post_content;
// do whatever you want
echo $content;
}
это работает, если я ставлю имя пост вручную. Но что, если я хочу, чтобы он был динамическим Php echo ($ item-> item_title); ?>. Я имею в виду, я не знаю, php, я спрашиваю вас, что помещать внутри 'yourpostname', если я хочу поместить itemtitle как postname ... –
'post-name' - это сообщение' slug' здесь, и это не название, но если вы хотите использовать заголовок вместо этого, вы можете использовать [get_page_by_title] (http://codex.wordpress.org/Function_Reference/get_page_by_title). –
большое спасибо! Отлично работает, вы спасли меня :) –