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