【问题标题】:Display Wordpress posts in other webpage在其他网页中显示 Wordpress 帖子
【发布时间】:2016-10-06 03:05:03
【问题描述】:

我在尝试理解 Wordpress 将帖子从 Wordpress 博客显示到网站时遇到了一些麻烦。

基本上我有一个网站 www.site.com 和一个博客 B,其 Wordpress 结构位于 www.site.com/blog。我想学习在A中显示B最近的帖子。

我知道我必须使用 PHP 来调用 B 的帖子并将它们作为 HTML 元素显示在 A 中。我弄乱了 PHP 函数,但无法正确执行解决方案。

你能帮帮我吗?

【问题讨论】:

  • 你可以使用jQuery的AJAX从另一个网站获取数据
  • 要显示所有帖子吗?
  • Marcin,我知道 Wordpress 有自己的 PHP 函数,所以我想避免使用 jQuery。 ChemistryBlob,不,只是最近的那些!我必须使用一个数组,对吧?就像,3 将是一个好的开始。
  • 可能还想查看 WP Rest API 并使用 javascript 进行操作

标签: php html wordpress


【解决方案1】:

从站点 A 中的站点 B 加载 wp-blog-header.php 文件。

像这样:

<?php 
    define('WP_USE_THEMES', false);
    require('./wp-blog-header.php');
?>

要加载帖子:

<ul>
<?php

$args = array( 'posts_per_page' => -1 );

$myposts = get_posts( $args );
foreach ( $myposts as $post ) : setup_postdata( $post ); ?>
    <li>
        <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
    </li>
<?php endforeach; 
wp_reset_postdata();?>

</ul>

【讨论】:

  • 谢谢,WordpressDave。我已经这样做了,但我不需要其他函数来自己调用帖子吗?
  • WordpressDave 我觉得我们已经接近了,谢谢。我正在使用一个测试文件,比如 www.site.com/test.php,我使用 www.site.com/blog/wp-blog-header.php 作为 php“要求”添加了您在此文件中提到的 PHP 函数”。对吗?
【解决方案2】:

感谢所有帮助。

正如我所说,我在 site.com/blog 上安装了 Wordpress,我希望 site.com 的主页 (index.php) 在页面的“新闻”部分显示 3 个 Wordpress 帖子。

因此,对于 site.com,我必须添加:

<div id="news">
<p>Here you can see our latest News</p>
<?php 
define('WP_USE_THEMES', false);
require('blog/wp-blog-header.php'); //Note the folder hierarchy to find wp-blog-header.php
?>
<?php
$my_query = new WP_Query('showposts=3'); //"3" being the number of posts to be shown
while ($my_query->have_posts()): $my_query->the_post();
?>
<h3><?php the_title() ?></h3> //This makes the post title show inside a h3 tag
<p><?php the_excerpt() ?></p> //This makes the post excerpt show inside a p tag
<?php endwhile;
?>
</div>

【讨论】:

    【解决方案3】:

    您应该查看 RSS 提要并将其解析为您需要的数据。大多数 WP 安装将提供可用的 RSS,SEE HERE

    有很多方法可以做到这一点,但我发现获取已经可用的数据很简单,编写一个控制器来解析和显示你寻找的数据很简单。这只是一种方法,可能适用于您的应用程序,也可能不适用于您的应用程序,但我很幸运。

    祝你好运,希望这可以引导您找到解决方案。

    【讨论】:

    • 谢谢,llldapt。我找到了我的 RSS 提要,但我不知道如何在我的 HTML 上显示它的内容。
    • 看看这个ANSWER HERE 这进入了数据的解析和显示HTML。我不确定你的代码技能水平,如果这高于你所知道的,我会尝试进一步澄清。
    • 另外,“博客 B”与“博客 A”位于不同的网站上,对吗?
    • llldapt,A 是类似 www.site.com 的网站,B 是位于 www.site.com/blog 上的 Wordpress 博客
    • 如果它在同一个站点上,我建议您继续使用上面的 WordpressDave。如果您正在查看跨域、移动应用“博客”实现、本机应用“博客”实现等,请记住 RSS 解析。虽然您可以使用它,但您会做更多的工作。
    猜你喜欢
    • 2015-06-04
    • 1970-01-01
    • 2011-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-18
    相关资源
    最近更新 更多