我正在尝试提供在Wordpress中创建的Wordpress 404页面(即它有一个slug)。我不想重定向到它(通过PHP或.htaccess),因为有时slug会被重命名(并且被遗忘),所以我想进入主题的404.php
。
如果没有iframe,有没有更好的方法呢?例如,使用WP函数渲染整个WP页面(但不使用cURL!)。
现在,我正在检查slug / page是否存在,如果存在,我会渲染一个全尺寸的iframe。否则,执行原始的404.php
代码。
<?php
// 404.php
if( get_page_by_path('/not-found') ) {
?>
<html>
<head>
<title>Not found</title>
<style type="text/css">
body, html { margin: 0; padding: 0; height: 100%; overflow: hidden; }
#content { position:absolute; left: 0; right: 0; bottom: 0; top: 0px; }
</style>
</head>
<body>
<div id="content">
<iframe width="100%" height="100%" frameborder="0" src="/not-found/"></iframe>
</div>
</body>
</html>
<?php
} else {
// The original code in the theme 404.php file
}