'FAQ', 'plural' => 'FAQs', 'dash_description' => 'Manage your answers', 'capability_type' => ['faq', 'faqs'], 'breadcrumb' => 'FAQ', 'addCrumb' => 'section', 'show_directory'=> true, 'directory_extra'=> ['section'], 'dash_title' => 'FAQs', 'icon' => 'question', 'rewrite_taxonomy' => 'section', 'rewrite' => [ 'slug' => 'faq', 'with_front' => false, ], 'fields' => [ 'post_title' => [ 'type' => 'text', 'label' => 'Question', ], 'post_status' => [ 'type' => 'radio', 'label' => 'Status', 'hidden' => true, 'options' => [ 'publish' => 'Show', 'draft' => 'Hide', 'trash' => 'Scrap', 'delete' => 'Permanently Delete' ] ], 'post_content' => [ 'type' => 'textarea', 'label' => 'Answer', 'quill' => true, ], ], 'single_image' => false, 'upload_title' => 'Upload Before & Afters', 'seo' => [ 'meta' => [ 'title' => '{{post_title}} | FAQ', 'description' => '{{post_excerpt}}' ], 'schema' => [ 'type' => 'FAQPage', 'question' => '{{post_title}}', 'answer' => '{{post_excerpt}}', ], 'archive' => [ 'type' => 'FAQPage', 'name' => 'Common Questions about Laser Tattoo Removal', ], ] ]; } add_action('wp_enqueue_scripts', 'nebDashScripts', 9999); function nebDashScripts() { global $wp; $page = str_replace('dash/', '', $wp->request); if ($page === 'settings') { wp_enqueue_script('jvb-form'); wp_enqueue_script('jvb-tabs'); wp_enqueue_script('jvb-populate-form'); wp_enqueue_script('jvb-copy-hours'); wp_enqueue_script('jvb-quill'); wp_enqueue_script('jvb-store'); $script = 'function loadSettingsPage() { let tabs = new window.jvbTabs(document.querySelector(".replace")); let store = new window.jvbStore({ name: "options", endpoint: "options", headers: { "action_nonce": jvbSettings.dash, } }); let form = new window.jvbForm(store); let forms = [ "#hours", "#menu-sections"]; let setForms = {}; forms.forEach(f => { let gotF = document.querySelector(`form${f}`); setForms[f] = form.registerForm(gotF); }); form.subscribe((event, data) => { switch (event) { case "form-submit": case "form-autosave": window.jvbQueue.addToQueue({ endpoint: "options", headers: { "action_nonce": jvbSettings.dash, }, data: data.changes, popup: `Saving options...`, title: "Saving Options" }); break; } }); } document.addEventListener("DOMContentLoaded", ()=>{ loadSettingsPage() }); '; $output = wp_add_inline_script('jvb-form', $script, 'after'); } elseif ($page === 'dash') { wp_enqueue_script('jvb-form'); wp_enqueue_script('jvb-store'); $script = 'function loadDashPage() { let store = new window.jvbStore({ name: "options", endpoint: "options", headers: { "action_nonce": jvbSettings.dash, } }); let form = new window.jvbForm(store); let forms = [ "#options"]; let setForms = {}; forms.forEach(f => { let gotF = document.querySelector(`form${f}`); setForms[f] = form.registerForm(gotF); }); form.subscribe((event, data) => { switch (event) { case "form-submit": case "form-autosave": window.jvbQueue.addToQueue({ endpoint: "options", headers: { "action_nonce": jvbSettings.dash, }, data: data.changes, popup: `Saving options...`, title: "Saving Options" }); break; } }); } document.addEventListener("DOMContentLoaded", ()=>{ loadDashPage() }); '; // $output = wp_add_inline_script('jvb-form', $script, 'after'); } }