如之前说的在外部引用wordpress教程:站外调用wordpress网站内的文章(需要在php文件中才能执行的)
但是出现问题就是我部分网站是html模板。我就需要在html中执行php代码。
本文也是站外调用wordpress网站内的文章的html篇,html网站调用wordpress网站内的文章
花了一天时间研究才弄懂如何在html文件里面执行php代码
总体思维就是:用js形式调用php,将php代码转为js显示。这样就可以了。
直接wordpress教程:站外调用wordpress网站内的文章基础上操作
步骤一:原网站call.php不修改。
步骤二:继续在被调用wordpress网站的根目录下或者调用网站根目录新建一个callhtml.php文件
<?php
$url="https://www.51yhyh.com/call.php"; //改为自己的调用源网站
//echo file_get_contents( $url ); //测试用的
$str1= file_get_contents( $url ); //获取文章类容链接
function jsformat($str)
{
$str = trim($str);
$str = str_replace('\\s\\s', '\\s', $str);
$str = str_replace(chr(10), '', $str);
$str = str_replace(chr(13), '', $str);
$str = str_replace(' ', '', $str);
$str = str_replace('\\', '\\\\', $str);
$str = str_replace('"', '\\"', $str);
$str = str_replace('\\\'', '\\\\\'', $str);
$str = str_replace("'", "\'", $str);
return $str;
} //将获取的内容html转为js代码
echo "document.write(\"". jsformat($str1)."\")"; //输出document.write格式js代码
?>
将以上网址改为自己call.php文件所在链接即可
步骤二:到目标网站目标地方引用callhtml.php即可
<script type="text/javascript" language="javascript" src="https://www.51yhyh.com/callhtml.php"></script>
将以上网址改为自己callhtml.php文件所在练级即可
下面是引用的教程:
①使用php转义输出HTML到JavaScript
使用php转义输出HTML到JavaScript,PHP中html转js函数,php函数html转js
function jsformat($str)
{
$str = trim($str);
$str = str_replace('\\s\\s', '\\s', $str);
$str = str_replace(chr(10), '', $str);
$str = str_replace(chr(13), '', $str);
$str = str_replace(' ', '', $str);
$str = str_replace('\\', '\\\\', $str);
$str = str_replace('"', '\\"', $str);
$str = str_replace('\\\'', '\\\\\'', $str);
$str = str_replace("'", "\'", $str);
return $str;
}
使用就不用说了··就是直接调用jsformat($str)
②HTML 页面直接调用 php 文件的方法
静态页面中看上去好像是不能直接调用php文件的,但是却可以使用js调用方式来调用php文件。
如在页面 demo.html 中用下面这句调用,可以将 f=onestopweb 的参数传递到 p.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<script type="text/javascript" src="p.php?f=onestopweb"></script>
<!-- //可以跨域访问
<script type="text/javascript" src="http://www.52wuditu.cn/p.php?f=onestopweb"></script-->
</body>
</html>
在p.php中有这样一段PHP代码:
<?php
$f = $_GET['f'];
echo "document.write('".$f."');";
?>
当执行 demo.html 文件时,就会调用 p.php 文件,并将 p.php 文件的输出作为JS语句来执行,内容为JS传递的参数 f 的值,也就是在PHP文件中接受过来的action的值。