だから私はこれに頭を悩ませています...私はまだPHPの経験があまりないので、WPプラグインを編集するように頼まれました。
PHP
foreach ($options['forms'][$form_id]['inputs'] as $id => $input) {
if (!$input['show'])
continue;
$val = '';
if (isset($_POST[$id])){
$val = esc_attr(strip_tags(stripslashes($_POST[$id])));
}else{
if( isset($input['value']) ) $val = esc_attr(strip_tags(stripslashes($input['value'])));
}
$error = ' ';
if (isset($input['error']) && $input['error'])
$error = ' error ';
if($input['type'] != 'hidden')
$content .= "\t".'<div class="sf_input_container_byben"><label class="w2llabel'.$error.$input['type'].'" for="sf_'.$id.'">'.esc_html(stripslashes($input['label'])).':';
if ($input['required'] && $input['type'] != 'hidden')
$content .= ' *';
if($input['type'] != 'hidden')
$content .= '</label>';
if ($input['type'] == 'text') {
$content .= '<input value="'.$val.'" id="sf_'.$id.'" class="w2linput text" name="'.$id.'" type="text"/></div>';
} else if ($input['type'] == 'textarea') {
$content .= '<textarea id="sf_'.$id.'" class="w2linput textarea" name="'.$id.'">'.$val.'</textarea></div>';
} else if ($input['type'] == 'hidden') {
$content .= '<input type="hidden" id="sf_'.$id.'" class="w2linput hidden" name="'.$id.'" value="'.$val.'"></div>';
}
}
明らかにそれは部分的です。
after each (終了タグ)を取得しているという事実を除いて、すべてが期待どおりに出力されています。nl2br は、php ファイルのどこでも使用されていません。<br />
</label>
私は何が欠けていますか?さらに情報が必要な場合は、ファイルに直接リンクできます。
HTMLは次のように出力されています:
<div class="sf_input_container_byben">
<label class="w2llabel text" for="sf_first_name">First name: *</label><br />
<input value="" id="sf_first_name" class="w2linput text" name="first_name" type="text"/>
</div>