提供する上でいくつかの簡単なポイント...
WordPressページからPHPスクリプトを実行したいのですが、スクリプトを保存するのに最適な場所はどこですか?このスクリプトは、フラットなHTMLディレクトリ構造の中で、WordPress以外の環境を使用しても完全に機能します。
そして私は次のコードを使用してページからそれを実行したいです。
<form class="contact_form" form action="phpmailersub.php" method="post" enctype="multipart/form-data" name="contact_form" onsubmit="return validateForm()">
その後、何がaction = "file"の形式になりますか?
現在、送信アクションはhttp://current/route/to/contact-test/phpmailersub.php
ページを検索していますが、明らかに、WordPressはそれを見つけることができません。
どうぞよろしくお願いします。私が私の質問を明確にするために何かをすることができるならば、またはあなたが追加資料を必要とするならば、私は助けるために最善を尽くします。
UPDATE
現在のところPHPファイル(phpmailersub.php)とclass.phpmailer.phpがあります。 http://damtech.it/demo/etap/wp-content/ plugins/phpmailersub.php
私の現在のコードは次のようになります。
<form class="contact_form" action="<?php bloginfo('http://damtech.it/demo/etap/wp-content/plugins/'); ?><p>/phpmailersub.php" enctype="multipart/form-data" method="post" name="contact_form" onsubmit="return validateForm()">
<table class="contact">
<tbody>
<tr>
<td class="third"><input type="text" name="cf_mercury" required="" /></td>
<td><span style="color: #3c4247;"> Name</span><span style="color: #3492d1;">*</span></td>
</tr>
<tr>
<td class="third"><input type="email" name="cf_jupiter" required="" />
<span class="form_hint">Correct format "[email protected]"</span></td>
<td> <span style="color: #3c4247;">E-mail</span><span style="color: #3492d1;">*</span></td>
</tr>
<tr>
<td colspan="2"><textarea name="cf_uranus" required="" rows="6"></textarea></td>
</tr>
</tbody>
</table>
<table class="contact">
<tbody>
<tr>
<td width="50%"><button class="submit" onclick="document.getElementById('contact_form').submit()" type="submit">Send message</button></td>
<td style="text-align: right;" width="50%"><span class="c-clear"><button class="reset" style="color: #3c4247; letter-spacing: -0.5px;" onclick="document.getElementById('contact_form').reset()" type="reset">reset</button></span></td>
</tr>
</tbody>
</table>
</form>
あなたは実際にあなたの最初の試みに近いです。
私のお勧めは、WPルートに "scripts"というフォルダーを作成し、PHPスクリプトファイルと添付ファイルをここに置くことです。スクリプトは「フラットHTMLファイル構造」と同じファイルパスを共有しないため、action属性でフルパスを宣言する必要があります。
あなたの行動コードはaction="http://damtech.it/demo/etap/scripts/phpmailersub.php"
になります
それは簡単です。プラグインを作成する必要はまったくありません(ただし、これをお勧めします)。添付ファイルパス(サーバーパス)、ページの指示などに関して行われた変更に対応するためにphpmailersub.php内の詳細を変更することを忘れないでください。
PHPファイルを直接呼び出さないでください。いくつかの設定では プラグインディレクトリが別のドメイン にあるかもしれないので、これは壊れます、そしてあなたのファイルは今WordPressコンテキストなしで動作するでしょう。
現在のURLをフォームアクションURL ( またはadmin-post.php
)として使用し、リクエストがPOST
リクエストであるかどうかをテストし、フォーム送信を処理します。その後、 303ステータスヘッダ を付けて元のページにリダイレクトします。
あなたのニーズに合ったコンタクトフォームプラグインがないと仮定して、Wordpressでそれをするための正しい方法はあなたのフォームを含みそして処理するあなたのテーマに適切なページテンプレートを書いて追加することです。完了したら、フォームを表示するページをページテンプレートに関連付けます。その後、アクションパスは単に ""になります。