从wordpress访问和显示wordpress帖子

时间:2009-09-22 10:48:09

标签: php wordpress

我有一个商业网站(php),并在子目录中有一个Wordpress博客。我需要在WordPress主页上显示最新帖子:/

站点: http://www.blabla.com

博客: http://www.blabla.com/blog/

所以我需要在www.blabla.com/index.php上展示帖子。如何访问Wordpress功能?

非常感谢!欣赏!

4 个答案:

答案 0 :(得分:2)

最简单的方法是使用Wordpress RSS Feed。

使用file_get_contents()cURL下载以获得更多控制权。

simpleXML解析它并输出。

您可能希望将其缓存到某处...您可以使用APC user functionsPEAR::Cache_Lite

编辑:代码看起来像这样(你需要更多的错误检查和东西 - 这只是为了让你开始):

$xmlText = file_get_contents('http://www.blabla.com/blog/feed/');

$xml = simplexml_load_string($xmlText);

foreach ($xml->item as $item)
{
    echo 'Blog Post: <a href="' . htmlentities((string)$item->link) . '">'
        . htmlentities((string)$item->title) . '</a>';

    echo '<p>' . (string)$item->description . '</p>';
}

答案 1 :(得分:2)

使用WordPress最佳实践,您不应该加载wp-blog-header.php,而是加载wp-load.php,因为它是专门为此目的而创建的。

在此之后,使用the WP_Query objectget_posts()。有关如何使用WP_Query的示例,请参见WordPress codex上的The Loop页面。虽然如果你从WordPress外部使用它们中的任何一个并不重要,但是存在干扰的可能性较小,例如GET参数。

例如,使用WP_Query:

<?php
$my_query = new WP_Query('showposts=3');
while ($my_query->have_posts()): $my_query->the_post();
?>
<h1><a href="<?php the_permalink() ?>"><?php the_title() ?></a></h1>
<?php endwhile; ?>

或者,使用get_posts():

<?php
global $post;
$posts = get_posts('showposts=3');
foreach($posts as $post) :
?>
<h1><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>
<?php endforeach; ?>

希望这有帮助! :)

答案 2 :(得分:1)

嘿,刚刚在网上找到了一个解决方案;

http://www.corvidworks.com/articles/wordpress-content-on-other-pages

效果很好!

<?php
// Include Wordpress 
define('WP_USE_THEMES', false);
require('blog/wp-blog-header.php');
query_posts('showposts=3');


?>      
<?php while (have_posts()): the_post(); ?>
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<?php endwhile; ?>  

答案 3 :(得分:-1)

我想最简单的解决方案是直接从数据库中发帖子。