0

我的网站上有两个 wordpress 博客,现在我想在主页上显示两个博客类别的帖子。我正在使用以下代码。

<?php require($_SERVER['DOCUMENT_ROOT'] . '/projects/wp-load.php'); 
 query_posts('cat=9& showposts=8');  if (have_posts()) : while (have_posts()) :   
the_post(); ?>
<ul><li>
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php 
$shorttitle4 = substr(the_title('','',FALSE),0,25)."...";

echo $shorttitle4;
?></a>

</li></ul>
<?php endwhile; else: echo "no posts"; endif; ?>
<?php wp_reset_query(); ?>

我的一个博客放在“项目”文件夹中,另一个放在“技术文件夹”中。但是如果我在上面的代码中将文件夹更改为“技术”,则此代码仅显示来自项目博客的帖子。我认为这是因为 wp-load.php 文件。你能帮助我吗?

谢谢

4

2 回答 2

1

有两种或多种方法,你可以做到。

  1. 使用 PHP Pear 包,例如 XML_RSS、XML_Tree 和 XML_Parser
  2. 使用 RSS 提要

尝试 RSS 提要。因为大多数托管服务提供商公司不会提供安装现成服务器的软件包。

写在你的主题函数文件(functions.php)

function read_rss($display=0,$url='') {
    $rss = new XML_RSS($url);
    $rss->parse();
    $itemArr = array_slice ( $rss->getItems(), 0, $display );
    return $itemArr;
}

现在写在你的模板文件上

<ul>
< ?php
    $items = read_rss(2,'http://sivel.net/feed');
    foreach ( $items as $item ) {
        echo '<li><a href="' . $item['link'] . '">' . $item['title'] . '</a>';
    }
?>
</ul>

您可以做更多的事情,请点击此链接或查看此 stackoverflow 答案

于 2012-11-04T04:56:14.800 回答
0

您确实需要提供更多信息,但我认为这可能是因为以下查询在其他文件夹中可能不成功

query_posts('cat=9& showposts=8'); 

技术站点中是否存在类别 9?也许您需要对另一个文件夹进行另一个查询?

于 2012-07-23T18:32:29.547 回答