我创建了一个名为“page-myslug”的页面。
<script>
var frame = document.getElementById('test');
frame.contentWindow.postMessage("HELLO", '*');
</script>
<iframe id="test" src="https://blaablaa.co/">
<script>
window.addEventListener('message', function(event) {
// IMPORTANT: Check the origin of the data!
if (~event.origin.indexOf('https://jsfiddle.net')) {
// The data has been sent from your site
// The data sent with postMessage is stored in event.data
console.log(event.data);
} else {
// The data hasn't been sent from your site!
// Be careful! Do not use it.
return;
}
});
我在后台看到了,但是当我通过网址转到该页面时(www.mywp.com/wp-content/themes/site/page-myslug.php?value=4243 =&gt; value = 4243,因为我的页面是用于创建PDF,它不是正确的WordPress)。我有一条错误消息说我的函数没有定义(由于TCPDF,我使用它们来创建显示PDF的URL)。如果我添加:
,它会工作<?php
/*
Template Name: myslug
*/
但显然不推荐,所以我该怎么做才能解决这个问题?
答案 0 :(得分:0)
不建议以这种方式创建页面。而是以wordpress方式进行....
您的pdf生成链接应如下所示:yoursite.com?create_pdf=1
不在主题的functions.php中编写代码 -
add_action('init', 'create_pdf_file');
function create_pdf_file(){
if(isset($_POST['create_pdf'])){
// Do your pdf printing task
exit;
}
}
答案 1 :(得分:0)
请尝试以下
add_action('init', 'create_pdf_file');
function create_pdf_file(){
if(isset($_REQUEST['create_pdf'])){
// Do your pdf printing task
exit;
}
}
OR
add_action('init', 'create_pdf_file');
function create_pdf_file(){
if(isset($_GET['create_pdf'])){
// Do your pdf printing task
exit;
}
}