请教如何在 html 页面调用显示 wordpress 内容 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
zeo
V2EX    程序员

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

  •  
  •   zeo 2017-05-28 13:48:56 +08:00 4288 次点击
    这是一个创建于 3069 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我想在首页的 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 页面中调用

    13 条回复    2017-05-29 12:55:16 +08:00
    zeo
        1
    zeo  
    OP
       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
        2
    Yunhao  
       2017-05-28 14:24:32 +08:00 via iPhone
    php 和 js 是不能直接这么交互的。你有两个选择:1.改用 ajax 异步请求 php 文件,通过 document.write 写在 html 里。2.在 php 文件中输出 js 语句,通过 script 标签来加载。
    zeo
        3
    zeo  
    OP
       2017-05-28 15:21:45 +08:00
    @Yunhao 能不能详细说一下代码如何写?我不太熟悉 js 和 ajax,,,
    beyoung
        4
    beyoung  
       2017-05-28 15:25:25 +08:00
    WordPress 有 api 的
    woorz
        5
    woorz  
       2017-05-28 17:43:49 +08:00
    @beyoung 正解. wordpress rest api
    zeo
        6
    zeo  
    OP
       2017-05-28 18:03:25 +08:00 via iPhone
    多请教一下,wordpress rest api 可以直接在 html 页面调用吗?我晚上回去好好研究
    a570295535
        7
    a570295535  
       2017-05-28 18:17:48 +08:00   1
    难的不会,这样还是可以的:

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

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

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

    <!DOCTYPE html>
    <html>
    <head>
    <script src="http://www.v2ex.com/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,就没有反应了,,,
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3031 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 608ms UTC 12:48 PVG 20:48 LAX 05:48 JFK 08:48
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86