我有一个网站,我最近添加了一个Wordpress博客。
www.mydomain.com/blog/
它位于自己的 new 目录中。
这似乎工作正常,我可以导航到它并完成所有Wordpress的东西。
但我希望在我的初始 index.php 页面(或其他php页面)中包含前3个帖子(或在此处插入Wordpress中的任何内容)。
www.mydomain.com/index.php
我尝试添加<?php get_template_part( 'content', get_post_format() ); ?>
,但这似乎不起作用并引发错误。
我知道我的 index.php 并非“技术上”了解Wordpress,所以它会失败。
所以我的问题是: 我在非Wordpress页面中包含哪些内容以便我可以提取帖子?
我真的不知道怎么问谷歌,因为“在php页面中包含wordpress帖子”只是告诉你如何在Wordpress的领域。
答案 0 :(得分:2)
你必须访问wordpress数据库,在那里你可以获得wordpress的所有帖子
$wpdb2 = new wpdb('dbuser', 'dbpassword', 'dbname', 'dbhost');
// get 10 posts, assuming the other WordPress db table prefix is "wp_"
$query = "SELECT post_title, guid FROM wp_posts
WHERE post_status = 'publish'
AND post_type = 'post'
ORDER BY post_date DESC LIMIT 10";
$someposts = $wpdb2->get_results($query, OBJECT);
foreach($someposts as $somepost)
echo "<a href=\"{$somepost->guid}\">{$somepost->post_title}</a><br />";
答案 1 :(得分:0)
您可以使用WordPress Feed,而不是直接连接到WordPress数据库。
$context = stream_context_create(array('http' => array('header' => 'Accept: application/xml')));
$url = 'http://www.example.com/blog/feed';
$xml = file_get_contents($url, false, $context);
$xml = simplexml_load_string($xml);
if (isset($xml->channel->item))
{
foreach($xml->channel->item as $item)
{
echo $item->title;
}
}