ショートコードを使用してサイトに挿入できるフォームを作成したいと考えています。
HTML部分を別のファイルに作成し、それをPHPショートコードで挿入できれば(ページのロジックをショートコードにするメカニズムから分離するため)、本当にすばらしいでしょう。
どうすればこれができますか?
-更新-
これは私がやったことです:私は2つのファイルを持っています。1つは「profiletemplate.php」と呼ばれ、もう1つは「scodes」と呼ばれます。これらはどちらも、初期化するinit.phpを使用してサイト用に作成しているプラグインの一部です。以下がその内容です。
init.php
<?php
require_once(dirname(__FILE__).'/pages/scodes.php');
?>
scodes.php
function jf_testcode() {
include dirname(__FILE__) . 'profiletemplate.php';
}
add_shortcode('testfield', 'jf_testcode');
profiletemplate.php
<?php // Template for my form shortcode ?>
<form>
Testing
</form>
次に、サイトのページで[testfield]ショートコードを使用します。
アップデート2
したがって、このメソッドは機能していますが、ショートコードが呼び出される場所にHTMLを挿入していません。代わりに、ページの上部にコンテンツを挿入するだけです(関数で「return 'Testing」ではなく「echo' Testing」と言った場合と同じです)。
functions.php
、この特定のファイルを必要とする/インクルードする関数をに記述add_shortcode()
し、目的のショートコードを設定して関数を呼び出す必要があります。