기존에 알려주신 코드를 아래와 같이 수정하여 잘 사용하고 있습니다.
감사합니다.
그런데 여기에 매번 입력하기가 불편할 것 같아서
select box를 추가하려고 합니다.
제품이 많지 않아서 제품명을 일일이 입력받기보다는 사용자가 선택해서 바로 입력 가능하게 만들고 싶은데요..
이 부분이 좀 어렵네요...
<table id="mytable" border="1" cellspacing="2">
<thead>
<tr>
</tr>
</thead>
<tbody class='editortable'>
<?php
for($index=1; $index<=$content->option->dynamic_field_index; $index++){
echo "<tr class='{$index}'>";
echo "<td><label name='kboard_option_pid{$index}' value='".$content->option->{'pid'.$index}."'>{$index}</label></td>";
echo "<td><input type='text' name='kboard_option_product{$index}' value='"></td>";
echo "<td><input type='text' name='kboard_option_osname{$index}' value></td>";
echo "<td><input type='text' name='kboard_option_price{$index}' value=></td>";
echo "<td><input type='text' name='kboard_option_quantity{$index}' value=></td>";
echo "<td><input type='text' name='kboard_option_total{$index}' value=></td>";
echo "</tr>";
}
?>
</tbody>
</table>
질문 많이 해서 죄송합니다ㅠㅠ
아래 처럼 해보시겠어요?
<tbody class='editortable'>
<?php
for($index=1; $index<=$content->option->dynamic_field_index; $index++){
echo "<tr class='{$index}'>";
echo "<td><label name='kboard_option_pid{$index}' value='".$content->option->{'pid'.$index}."'>{$index}</label></td>";
?>
<div class="attr-value">
<select name="kboard_option_product" id="kboard_option_product" data-placeholder="제품 선택">
<optgroup value="0" label="제품">
<option value="윈도우용"<?php if($content->option->product == '윈도우용'):?> selected<?php endif?>>윈도우용</option>
<option value="리눅스용"<?php if($content->option->product == '리눅스용'):?> selected<?php endif?>>리눅스용</option>
<option value="유닉스용"<?php if($content->option->product == '유닉스용'):?> selected<?php endif?>>유닉스용</option>
</optgroup>
</select>
</div>
<?php
echo "<td><input type='text' name='kboard_option_osname{$index}' value='".$content->option->{'osname'.$index}."' placeholder='OS명'></td>";
echo "<td><input type='text' name='kboard_option_price{$index}' value='".$content->option->{'price'.$index}."' placeholder='단가'></td>";
echo "<td><input type='text' name='kboard_option_quantity{$index}' value='".$content->option->{'quantity'.$index}."' placeholder='수량'></td>";
echo "<td><input type='text' name='kboard_option_total{$index}' value='".$content->option->{'total'.$index}."' placeholder='금액'></td>";
echo "</tr>";
}
?>
</tbody>
</table>
쉽게 말씀드리자면 <?php ?> 구문을 2개로 만든거죠.
HTML 과 PHP 구문은 정확하게 문리되어야 합니다.
아래 코드 자체는 문제가 없어 보입니다.
echo "<td><input type='text' name='kboard_option_product{$index}' value='".$content->option->{'product'.$index}."' placeholder='제품명'></td>";
for문 밖에 추가를 하신 건지요?
어떻게 하셨는지 잘 모르겠어서 답변드리리가 어렵군요 ㅎㅎ;;
워드프레스 디버그 모드를 활성화해서 오류 메시지를 확인하시면 쉽게 문제를 해결하실 수 있을 겁니다.
그리고 오류 메시지도 같이 올려주시면 답변드리는데 도움이 됩니다.
워드프레스의 wp-config.php 파일에서
define('WP_DEBUG', false); -> define('WP_DEBUG', true);
이렇게 수정해주시면 디버그 모드가 활성화 됩니다.
또는 워드프레스 디버그 모드 대신 아래 플러그인으로 오류 내용을 확인할 수 있습니다.
https://ko.wordpress.org/plugins/error-log-monitor/
저희도 필드를 보다 쉽게 추가하실 수 있도록 최대한 빠른 시일 내에 KBoard를 업데이트하도록 하겠습니다.
고맙습니다.