Saya sedang membangun sebuah plugin yang memungkinkan pengunjung mengirimkan konfigurasi perangkat lunak untuk dibagikan kepada orang lain. Mereka memasukkan beberapa bit informasi (nama, perangkat lunak, dan mesin) dan kemudian mengunggah profil XML mereka, yang pada akhirnya diubah menjadi jenis kiriman khusus.
Saat ini, saya menyimpan semua yang mereka masukkan seperti nama, perangkat lunak, jenis mesin, dll. sebagai metadata. Saya ingin memiliki opsi yang telah ditentukan sebelumnya untuk jenis perangkat lunak/mesin, memungkinkan mereka untuk memilih dari opsi ini saat mengirimkan.
Apa cara yang baik untuk mencapai ini di Wordpress? Haruskah saya menyimpannya sebagai nilai yang telah ditentukan sebelumnya di kotak pilihan melalui formulir, lalu menyimpan data sebagai teks dalam metadata atau adakah alternatif yang lebih baik?
function slicer_profile_form()
{
echo '<form action="' . esc_url( $_SERVER['REQUEST_URI'] ) . '" method="post" enctype="multipart/form-data">';
echo '<p>';
echo 'Your Name<br />';
echo '<input type="text" name="slicer-profile-author" pattern="[a-zA-Z0-9 ]+" value="' . ( isset( $_POST["slicer-profile-author"] ) ? esc_attr( $_POST["slicer-profile-author"] ) : '' ) . '" size="48" />';
echo '</p>';
echo '<p>';
echo 'Profile Name<br />';
echo '<input type="text" name="slicer-profile-name" pattern="[a-zA-Z0-9 ]+" value="' . ( isset( $_POST["slicer-profile-name"] ) ? esc_attr( $_POST["slicer-profile-name"] ) : '' ) . '" size="48" />';
echo '</p>';
echo '<p>';
echo 'Profile Description<br />';
echo '<textarea name="slicer-profile-description" pattern="[a-zA-Z0-9 ]+" value="' . ( isset( $_POST["slicer-profile-description"] ) ? esc_attr( $_POST["slicer-profile-description"] ) : '' ) . '" rows="4"></textarea>';
echo '</p>';
echo '<p>';
echo '3D Printer Model<br />';
echo '<select name="slicer-profile-model">';
echo '<option value="a8">Anet A8</option>';
echo '<option value="cr10">Creality CR-10</option>';
echo '<option value="mini">Monoprice Select Mini</option>';
echo '<option value="makerselect">Monoprice Maker Select</option>';
echo '<option value="ultimate">Monoprice Ultimate</option>';
echo '<option value="prusamk2">Prusa MK2/MK2S/MK3</option>';
echo '</select>';
echo '</p>';
echo '<p>';
echo 'Slicer Software<br />';
echo '<select name="slicer-profile-software">';
echo '<option value="cura">Cura</option>';
echo '<option value="s3d">Simplify3D</option>';
echo '<option value="slic3r">Slic3r</option>';
echo '</select>';
echo '</p>';
echo '<p>';
echo 'Slicer Profile<br />';
echo '<input type="file" name="slicer-profile" accept=".fff,.ini,.curaprofile">';
echo '</p>';
echo '<p><input type="submit" name="slicer-profile-submitted" value="Submit"/></p>';
echo '</form>';
}