请教如何在 html 页面调用显示 wordpress 内容

2017-05-28 13:48:56 +08:00
 zeo

我想在首页的 html 页面中用 js 显示 blog 的更新文章,但是尝试了网上的各种办法都不行,请大侠给指点一下。

建立一个 php 文件,输出 blog 文章部分,没有问题,执行 php 文件显示正常。

但是把 php 文件用 js 输出就是空白了,,

out.php 文件内容

  • 执行这个文件显示内容是对的。

    在 index.html 页面中,用

    <script type="text/javascript" src="http://47.93.230.225/blog/out.php?"></script>

    来调用,但是显示空白

    请教大家,如何修改才可以把 php 文件的显示结果,在 html 页面中调用

    4096 次点击
    所在节点    程序员
    13 条回复
    zeo
    2017-05-28 13:50:59 +08:00
    out.php 文件内容如下
    <?php
    define('WP_USE_THEMES', false);
    require('wp-load.php');
    query_posts('showposts=10&orderby=new');
    while(have_posts()): the_post(); ?>

    <li><a title="<?php the_title(); ?>"href="<?php the_permalink(); ?>"target="_blank"><?php the_title(); ?></a></li>
    <?php endwhile; ?>
    Yunhao
    2017-05-28 14:24:32 +08:00
    php 和 js 是不能直接这么交互的。你有两个选择:1.改用 ajax 异步请求 php 文件,通过 document.write 写在 html 里。2.在 php 文件中输出 js 语句,通过 script 标签来加载。
    zeo
    2017-05-28 15:21:45 +08:00
    @Yunhao 能不能详细说一下代码如何写?我不太熟悉 js 和 ajax,,,
    beyoung
    2017-05-28 15:25:25 +08:00
    WordPress 有 api 的
    woorz
    2017-05-28 17:43:49 +08:00
    @beyoung 正解. wordpress rest api
    zeo
    2017-05-28 18:03:25 +08:00
    多请教一下,wordpress rest api 可以直接在 html 页面调用吗?我晚上回去好好研究
    a570295535
    2017-05-28 18:17:48 +08:00
    难的不会,这样还是可以的:

    方法 1 (哪都能调用):
    <iframe src="http://47.93.230.225/blog/out.php" width="100%" height="100%" iframeborder="0" ></iframe>

    方法 2 (仅限同一域名下):
    <script type="text/javascript">$.get("http://47.93.230.225/blog/out.php",function(data){
    $("#md").html(data);
    });</script>
    在想要调用的地方插入:
    <div id="md"></div>
    gdtv
    2017-05-28 18:23:07 +08:00
    感谢 7 楼的回复。V 站最讨厌伸手党,但我不十分讨厌。有时候人家就想实现一个简单东西,按 V 站的说话为了实现这点东西就必须自力更生,甚至学一门新的语言。懂的人可能花几秒钟就能给出答案,何必要人家去学完一本《 XXX 从入门到精通》呢?
    zeo
    2017-05-28 20:40:48 +08:00
    感谢大家的热心,我确实不会,自己折腾了好几个晚上了,我一会试试
    zeo
    2017-05-28 20:54:16 +08:00
    非常感谢 7 楼的回答,我用你的方法没有问题,谢谢大侠。
    这个方法的好处是我自己可以在 out.php 文件里修改输出的排版格式。。。
    zeo
    2017-05-28 22:25:58 +08:00
    @a570295535 您这个方法确实可行,只是对于 seo 不够有利,能不能把 php 文件输出的数据,用 js 直接显示出来,而不是放在 dom 里呢?
    a570295535
    2017-05-28 22:38:52 +08:00
    @zeo 让文字显示在代码里利于 seo,这个我知道,你的需求是在,不与模板文件交互的 html 页面中调用,这就有困难了,如果是在模板文件,可以利用一些自带标签,我很多年没用过 WordPress 了,不知道现在啥样了,而且我本来就是个二把刀。
    zeo
    2017-05-29 12:55:16 +08:00
    @a570295535 无论如何,非常感谢你的指点。

    关于 wordpress 的调用,我可以在 php 文件里变换标签和格式,我卡在把 php 文件输出的内容,在 html 文件里用有利于 seo 的文字显示出来。

    我在 W3School 学习$.Get 的用法,这段代码显示正常,但是换成我的 php 文件就什么也不显示了,我不知我的问题出在哪里。

    <!DOCTYPE html>
    <html>
    <head>
    <script src="/jquery/jquery-1.11.1.min.js"></script>
    <script>
    $(document).ready(function(){
    $("button").click(function(){
    $.get("/example/jquery/demo_test.asp",function(data,status){
    alert("数据:" + data + "\n 状态:" + status);
    });
    });
    });
    </script>
    </head>
    <body>

    <button>向页面发送 HTTP GET 请求,然后获得返回的结果</button>

    </body>
    </html>


    只要把网址换成我的 out.php,就没有反应了,,,

    这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

    https://www.v2ex.com/t/364425

    V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

    V2EX is a community of developers, designers and creative people.

    © 2021 V2EX