在wordpress生成的页面中包含php文件

在wordpress生成的页面中包含php文件,php,wordpress,captcha,Php,Wordpress,Captcha,我正在处理注册表,并使用一个简单的验证码php脚本生成验证码图像 这是用于在页面上显示验证码图像的html代码 <img id="img" src="captcha.php"> 在静态版本的页面上,一切正常,但Wordpress生成的页面上并没有显示图像 是否可以在Wordpress页面中显示我的验证码图像而不使用任何插件 编辑:我正在添加更多的代码 我的page.php文件 <?php get_header(); ?> <?php while ( have_

我正在处理注册表,并使用一个简单的验证码php脚本生成验证码图像

这是用于在页面上显示验证码图像的html代码

<img id="img" src="captcha.php">

在静态版本的页面上,一切正常,但Wordpress生成的页面上并没有显示图像

是否可以在Wordpress页面中显示我的验证码图像而不使用任何插件

编辑:我正在添加更多的代码

我的page.php文件

<?php get_header(); ?>
<?php while ( have_posts() ) : the_post(); ?>
  <div class="row">
    <div class="col-md-9 col-left-outer">
        <div class="col-md-12 col-left">
            <img id="img" src="'.home_url().'/captcha.php"> <-- Added this line to test if captcha will display from page.php file -->
            <?php the_content(); ?>
        </div>
    </div>
    <div class="col-md-3">
        <div class="col-md-12 col-right">
          <!-- Archive Side Navigation -->
            <?php get_sidebar(); ?>
        </div>
    </div>
  </div>
 <!-- /.row -->
<?php endwhile; wp_reset_query(); ?>
<?php get_footer(); ?>

我在Wordpress仪表板的文本框中输入的代码

<div class="row">
   <div class="col-lg-4 col-md-4">
      <label for="InputName">Παρακαλούμε, εισάγετε CAPTCHA</label>        
      <img id="img" src="'.home_url().'/captcha.php">
      <input id="captcha1" class="form-control" name="captcha" type="text" required>
   </div>
</div>

∏αρακαλμε,εσεγετεCAPTCHA

由于WP使用.htaccess进行重写,因此不应使用中的相对路径
src=“captcha.php”
,但是像
src=”http://www.example.com/wp/captcha.php“

src=“/wp/captcha.php”

您必须根据您的配置调整上述路径

WP知道您的站点位于何处,因此要保持独立,请使用以下方法:

<?php
echo '<img id="img" src="' . home_url() . '/captcha.php">';

听起来像是路径问题。我不明白为什么它不起作用。只需确保所有Wordpress文件都是
.php
扩展名。还要检查错误。生成的html代码中是否包含
?请提供有关您的环境的详细信息。WP是如何生成登记表的?你知道WP模板吗?你知道WP钩子吗?@Fred-ii-captcha.php文件位于我的模板文件夹的根目录中。这不应该是路径问题。@PaulH是的,当我加载页面时,我可以看到这个片段。带有表单的页面由Wordpress通过我的模板目录中的page.php文件生成。是的,我知道模板,我正在使用我自己的自定义模板。不过我对钩子不太熟悉。这就是加载页面后html片段的样子
url似乎没有解析为路径。也许问题是我的代码片段没有包含在header.php或page.php文件中,而是在通过Wordpress dashboard创建新页面时包含在文本框中??对不起,更正了我答案中的打字错误。你能提供更多的上下文和代码片段周围的行吗?好的,我设法用下面的代码片段
/captcha.php显示了验证码“>
但它只有在我将其包含在page.php文件中时才起作用。也许wordpress生成的页面是html格式而不是php,因此路径没有解析。编辑:我想控制在页面上显示我的验证码的位置,所以当从仪表板页面生成器添加验证码时,我需要它工作。事实上,WP不会在帖子的文本框中执行php语句。这将是一个安全问题。因此,在这种情况下,使用src=“”或src=“/wp/captcha.php”(根据您的配置调整路径),如上面答案文本的第一部分所示。是的!成功了。在加载页面并将其粘贴到文本框后,我使用了源代码中由
/captcha.php“
解析的路径。您应该在最后一段代码中将
echo home\u url
更改为
echo home\u url()
,我将接受您的答案。谢谢!
<img id="img" src="<? php echo home_url() ?>/captcha.php">