31 lines
1.0 KiB
PHP
31 lines
1.0 KiB
PHP
<?php
|
|
/**
|
|
* File ini dipanggil oleh fungsi admin WordPress Anda untuk merender canvas.
|
|
*/
|
|
|
|
// 1. Ambil data awal dari WordPress
|
|
$post_id = isset($_GET['post']) ? intval($_GET['post']) : 0;
|
|
$saved_config_json = '[]';
|
|
if ($post_id > 0) {
|
|
$formipay_post_meta = get_post_meta($post_id, 'formipay_settings', true);
|
|
if (!empty($formipay_post_meta['fields'])) {
|
|
$saved_config_json = json_encode($formipay_post_meta['fields']);
|
|
}
|
|
}
|
|
|
|
// Data yang akan kita lewatkan ke Vue
|
|
// Menggantikan objek `formipay_admin` dari kode lama
|
|
$vue_app_data = [
|
|
'savedFields' => json_decode($saved_config_json), // Kirim sebagai objek, bukan string
|
|
'ajaxUrl' => admin_url('admin-ajax.php'),
|
|
'nonce' => wp_create_nonce('formipay-secure-nonce'),
|
|
'formId' => $post_id,
|
|
'presets' => [
|
|
'countryList' => your_function_to_get_countries() // Panggil fungsi PHP Anda di sini
|
|
],
|
|
];
|
|
?>
|
|
|
|
<div id="formipay-builder-app" data-app-data='<?php echo esc_attr(json_encode($vue_app_data)); ?>'>
|
|
<p>Loading Form Builder...</p>
|
|
</div>
|