<?php
|
|
if (!defined('ABSPATH')) {
|
exit;
|
}
|
|
require(JVB_DIR . '/inc/helpers/breadcrumbs.php');
|
//require(JVB_DIR . '/inc/helpers/cache.php');
|
require(JVB_DIR . '/inc/helpers/commonPages.php');
|
require(JVB_DIR . '/inc/helpers/crud.php');
|
require(JVB_DIR . '/inc/helpers/dashboard.php');
|
require(JVB_DIR . '/inc/helpers/directory.php');
|
//require(JVB_DIR . '/inc/helpers/email.php');
|
require(JVB_DIR . '/inc/helpers/forms.php');
|
require(JVB_DIR . '/inc/helpers/formatting.php');
|
//require(JVB_DIR . '/inc/helpers/icons.php');
|
require(JVB_DIR . '/inc/helpers/inlineStyles.php');
|
require(JVB_DIR . '/inc/helpers/legacy.php');
|
require(JVB_DIR . '/inc/helpers/media.php');
|
require(JVB_DIR . '/inc/helpers/members.php');
|
require(JVB_DIR . '/inc/helpers/renderFields.php');
|
require(JVB_DIR . '/inc/helpers/saveFields.php');
|
require(JVB_DIR . '/inc/helpers/terms.php');
|
require(JVB_DIR . '/inc/helpers/time.php');
|
require(JVB_DIR . '/inc/helpers/ui.php');
|
//require(JVB_DIR . '/inc/helpers/umami.php');
|
|
add_action('init', 'jvb_do_once');
|
/**
|
* Helper to do things once
|
* @return void
|
*/
|
function jvb_do_once():void
|
{
|
// delete_option(BASE.'do_these_once');
|
$options = get_option(BASE.'do_these_once', []);
|
|
foreach ($options as $option => $callback) {
|
// delete_option($option);
|
if (!get_option($option, false)) {
|
$callback();
|
update_option($option, true);
|
}
|
}
|
}
|
|
function jvb_register_do_once(string $option, array $callback)
|
{
|
// delete_option(BASE.'do_these_once');
|
//Ensure we have the option starting with BASE
|
$option = (str_starts_with($option, BASE)) ? $option : BASE.$option;
|
$options = get_option(BASE.'do_these_once', []);
|
// delete_option($option);
|
if (!array_key_exists($option, $options)) {
|
$options[$option] = $callback;
|
update_option(BASE.'do_these_once', $options);
|
}
|
}
|