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

时间:2016-07-05 12:08:52

标签: php wordpress captcha

我正在处理注册表单并使用简单的验证码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>

1 个答案:

答案 0 :(得分:1)

由于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">';

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

编辑:
<?php仅在插件或模板中有效。如果您的html代码仅在WP Widget文本内容中,则出于安全原因不会解析PHP。