2016-07-05 19 views
-1

Ich arbeite an Registrierungsformular und verwenden Sie ein einfaches Captcha PHP-Skript, um Captcha-Bild zu generieren.Include PHP-Datei in WordPress generierte Seite

Dies ist der HTML-Code verwendet, auf der Seite, auf der statischen Version der Seite, aber das Bild zeigt nicht auf Wordpress generierte Seite

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

Alles hat gut funktioniert das Captcha Bild anzuzeigen.

Kann ich mein Captcha-Bild auf der Wordpress-Seite anzeigen, ohne Plugins zu verwenden?

EDIT: Ich füge ein bisschen mehr von meinem Code

Meine page.php Datei

<?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(); ?> 

Der Code I-Eingang in das Textfeld in Wordpress-Dashboard

<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

Klingt wie ein Pfadproblem für mich. Ich sollte nicht sehen, warum es nicht funktionieren würde. Stellen Sie nur sicher, dass alle Ihre Wordpress-Dateien auch ".php" -Erweiterungen sind. Überprüfen Sie auch auf Fehler. –

+0

Ist '' im generierten HTML-Code? – PaulH

+0

Bitte geben Sie Details zu Ihrer Umgebung an. Wie wird das Registrierungsformular von WP erstellt? Kennen Sie WP-Vorlagen? Kennen Sie WP-Haken? – PaulH

Antwort

1

Da WP .htaccess zum Neuschreiben verwendet, sollten Sie keinen relativen Pfad wie in
verwenden, aber ein absoluter Pfad wie
src="http://www.example.com/wp/captcha.php" oder
src="/wp/captcha.php"

Sie die Pfade oberhalb Ihrer Konfiguration anpassen.

WP weiß, wo Ihre Website befindet, so unabhängig sein, verwenden Sie so etwas wie:

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

oder

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

Edit:
<?php wird nur in eine, wenn Arbeit Plugin oder Vorlage. Wenn Ihr Code html nur in einem WP Widget text content enthalten ist, wird PHP aus Sicherheitsgründen nicht analysiert.

+0

So sieht das HTML-Snippet nach dem Laden der Seite aus '' Die URL scheint nicht in einen Pfad aufgelöst zu werden. Vielleicht ist das Problem, dass mein Snippet nicht in der Datei header.php oder page.php enthalten ist, aber im Textfeld beim Erstellen einer neuen Seite über das Wordpress-Dashboard? – KoKsMAN

+0

Sorry, korrigierter Tippfehler in meiner Antwort.Kannst du mehr Kontext, die Zeilen um dein Snippet liefern? – PaulH

+0

Okay, ich habe es geschafft, Captcha zur Anzeige mit dem folgenden Snippet ' ' Aber es funktioniert nur, wenn ich es in meine page.php-Datei einfügen. Vielleicht ist die Seite von Wordpress in HTML generiert Format nicht php, daher ist der Pfad nicht aufgelöst BEARBEITEN: Ich möchte Kontrolle darüber haben, wo mein Captcha auf der Seite angezeigt werden soll, also brauche ich es, wenn es vom Dashboard-Seitengenerator hinzugefügt wird – KoKsMAN