Wordpress功能无法使用自定义页面

时间:2018-05-15 09:54:08

标签: php wordpress function

我创建了一个名为“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
*/

但显然不推荐,所以我该怎么做才能解决这个问题?

2 个答案:

答案 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;
      }
    }