a:3:{s:16:"site_wide_header";a:2:{i:0;a:14:{s:2:"id";i:15176;s:5:"title";s:10:"Header CSS";s:4:"code";s:1255:"<link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap" rel="stylesheet">

<style>
  /* 3. Force the browser to apply the font to every single element */
  *, body, h1, h2, h3, h4, h5, h6, p, a, span, div {
    font-family: 'Montserrat', sans-serif !important;
  }
</style>


<style>
  /* 1. Force all Hero layers to be visible immediately */
  .elementor-section.elementor-top-section, 
  .elementor-section.elementor-top-section .elementor-container, 
  .elementor-section.elementor-top-section .elementor-column,
  .elementor-section.elementor-top-section .elementor-widget-wrap,
  .elementor-section.elementor-top-section .elementor-widget {
    opacity: 1 !important;
    visibility: visible !important;
    animation: none !important;
  }

  /* 2. Layout Stability - Prevents the "Tiny Map/CTA" bug */
  .elementor-section.elementor-top-section .elementor-container {
    display: flex !important;
    flex-wrap: wrap !important;
  }

  /* 3. Avatar & CLS Fix - Keeps bot and layout happy */
  .eco-menu-wrapper img[alt="Avatar"] {
    width: 40px !important;
    height: 40px !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
  }
</style>";s:9:"code_type";s:4:"html";s:8:"location";s:16:"site_wide_header";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:0:{}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2026-02-09 17:09:07";}i:1;a:14:{s:2:"id";i:14879;s:5:"title";s:8:"Menu CSS";s:4:"code";s:1034:"/* ECO MENU STYLING */
.eco-menu-wrapper { margin-bottom: 2.5rem !important; }

.eco-menu-title { 
    font-size: 1.7rem; 
    font-weight: 700; 
    margin-bottom: 5px; 
}

.eco-menu-category-desc { 
    color: rgba(255,255,255,0.85) !important; 
    font-size: 0.95rem; 
    font-style: italic; 
    margin-bottom: 15px; 
    line-height: 1.4;
    display: block !important;
}

/* Separators */
.eco-menu-list-body { 
    border-top: 1px solid rgba(255,255,255,0.4) !important; 
}

.eco-menu-item { 
    border-bottom: 1px solid rgba(255,255,255,0.15) !important; 
}

.eco-menu-toggle {
    display: flex; 
    justify-content: space-between; 
    align-items: center;
    width: 100%; 
    padding: 0.8rem 0; 
    background: transparent !important; 
    border: none !important;
    cursor: pointer;
}

.eco-menu-name { font-weight: 600; font-size: 1rem; text-align: left; }
.eco-menu-icon { font-size: 1.2rem; opacity: 0.8; }

.eco-menu-panel { display: none; } /* Default state for JS */";s:9:"code_type";s:3:"css";s:8:"location";s:16:"site_wide_header";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:2:{s:4:"show";s:4:"show";s:6:"groups";a:0:{}}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2026-02-08 06:53:02";}}s:13:"frontend_only";a:2:{i:0;a:14:{s:2:"id";i:14306;s:5:"title";s:16:"Schema Org ABOUT";s:4:"code";s:1370:"add_action('wp_head', function() {
    // Only run this code if we are on the 'About Us' page
    // Change 'about-us' to match your actual page slug
    if ( is_page('about-bali-eco-deli-nusa-lembongan') ) { 
    ?>
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Bali ECO Deli",
  "url": "https://baliecodeli.net",
  "logo": "https://baliecodeli.net/wp-content/uploads/2026/01/Logo-Bali-ECO-Deli-600.webp",
  "description": "A pioneer in healthy, sustainable dining on Nusa Lembongan, focused on organic ingredients and community-driven eco-programs.",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "Jl. Jungutbatu",
    "addressLocality": "Nusa Lembongan",
    "addressRegion": "Kabupaten Klungkung, Bali",
    "postalCode": "80771",
    "addressCountry": "ID"
  },
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "0821-3732-7521",
    "contactType": "customer service",
    "areaServed": {
      "@type": "AdministrativeArea",
      "name": "Kec. Nusa Penida"
    }
  },
  "sameAs": [
    "https://www.facebook.com/baliecodeli",
    "https://www.instagram.com/baliecodeli",
    "https://www.tripadvisor.com/Restaurant_Review-g297700-d3870634-Reviews-Bali_Eco_Deli-Nusa_Lembongan_Bali.html"
  ]
}
</script>
    <?php
    }
});";s:9:"code_type";s:3:"php";s:8:"location";s:13:"frontend_only";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:0:{}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2026-02-02 19:28:56";}i:1;a:14:{s:2:"id";i:12766;s:5:"title";s:45:"Hide AlOSEO version number from the front end";s:4:"code";s:60:"add_filter( 'aioseo_hide_version_number', '__return_true' );";s:9:"code_type";s:3:"php";s:8:"location";s:13:"frontend_only";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:0:{}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2025-12-13 16:04:25";}}s:10:"everywhere";a:10:{i:0;a:14:{s:2:"id";i:14152;s:5:"title";s:9:"PageSpeed";s:4:"code";s:706:"add_shortcode('pagespeed_status', function() {

    // Google Sheet settings
    $sheet_id = '1yv3q6yltFck4pwnCW6s2nI1BB6_bTYoxXUreeWMEfU4';
    $sheet_name = 'Sheet1';
    $cell = 'H5';

    // Google visualization API URL
    $url = "https://docs.google.com/spreadsheets/d/$sheet_id/gviz/tq?tqx=out:csv&sheet=$sheet_name&range=$cell";

    $response = wp_remote_get($url, array('timeout' => 5));

    if (is_wp_error($response)) {
        return 'PageSpeed data unavailable';
    }

    $body = wp_remote_retrieve_body($response);

    // Clean CSV output
    $value = trim(str_replace('"', '', $body));

    return '<div class="pagespeed-box">' . esc_html($value) . '</div>';
});
";s:9:"code_type";s:3:"php";s:8:"location";s:10:"everywhere";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:0:{}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2026-01-21 06:19:10";}i:1;a:14:{s:2:"id";i:13925;s:5:"title";s:17:"Menu Accordion JS";s:4:"code";s:970:"add_action('wp_footer', function () {
    ?>
    <script>
    document.addEventListener('click', function (e) {
        // 1. Find the toggle button using the new class
        var btn = e.target.closest('.eco-menu-toggle');
        if (!btn) return;

        // 2. Target the panel immediately following the button
        var panel = btn.nextElementSibling; 
        var isExpanded = btn.getAttribute('aria-expanded') === 'true';

        // 3. Toggle accessibility state
        btn.setAttribute('aria-expanded', !isExpanded);
        
        // 4. Toggle visibility and the icon (+ / −)
        if (panel && panel.classList.contains('eco-menu-panel')) {
            panel.style.display = isExpanded ? 'none' : 'block';
            
            var icon = btn.querySelector('.eco-menu-icon');
            if (icon) {
                icon.textContent = isExpanded ? '+' : '−';
            }
        }
    });
    </script>
    <?php
});";s:9:"code_type";s:3:"php";s:8:"location";s:10:"everywhere";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:0:{}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2026-02-07 09:17:37";}i:2;a:14:{s:2:"id";i:13911;s:5:"title";s:14:"Menu shortcode";s:4:"code";s:3116:"add_shortcode('bali_menu_live', function ($atts) {
    // --- CACHE CONTROLS ---
    $cache_enabled = true; // Set to false to see Google Sheet changes in real-time
    $cache_ttl     = 24 * HOUR_IN_SECONDS; 
    // ----------------------

    $atts = shortcode_atts(['name' => ''], $atts);
    $category = trim($atts['name']);
    if (!$category) return '';

    $cache_key = 'bed_menu_final_' . md5($category);

    // 1. Check Cache
    if ($cache_enabled) {
        $cached = get_transient($cache_key);
        if ($cached) return $cached;
    }

    $sheet_id = '1PeRiJk05I2MTqy5QPUE1jocGlqysM7M-WOBzz6LmE3U';
    $url = "https://docs.google.com/spreadsheets/d/{$sheet_id}/gviz/tq?tqx=out:json&sheet=" . urlencode($category);
    
    $response = wp_remote_get($url, ['timeout' => 10]);
    if (is_wp_error($response)) return '';

    $body = wp_remote_retrieve_body($response);
    $start = strpos($body, '{'); $end = strrpos($body, '}');
    $json = substr($body, $start, $end - $start + 1);
    $data = json_decode($json, true);

    if (!$data || !isset($data['table'])) return '';

    /**
     * EXTRACT A1 DESCRIPTION
     * Checks both 'cols' (headers) and 'rows' (data) to ensure A1 is caught.
     */
    $category_desc = '';
    if (!empty($data['table']['cols'][0]['label']) && !str_contains($data['table']['cols'][0]['label'], 'Col')) {
        $category_desc = $data['table']['cols'][0]['label'];
    } elseif (isset($data['table']['rows'][0]['c'][0]['v'])) {
        $category_desc = $data['table']['rows'][0]['c'][0]['v'];
    }

    $html = '<div class="eco-menu-wrapper">';
    $html .= '<h2 class="eco-menu-title">' . esc_html($category) . '</h2>';
    
    if ($category_desc) {
        $html .= '<div class="eco-menu-category-desc">' . esc_html($category_desc) . '</div>';
    }

    $html .= '<div class="eco-menu-list-body">';

    $rows = $data['table']['rows'];
    // Skip Row 1 in the loop if it was used as the description
    $start_index = ($category_desc === (isset($rows[0]['c'][0]['v']) ? $rows[0]['c'][0]['v'] : '')) ? 1 : 0;

    for ($i = $start_index; $i < count($rows); $i++) {
        $name = isset($rows[$i]['c'][0]['v']) ? trim($rows[$i]['c'][0]['v']) : '';
        if (!$name) continue;

        $desc = isset($rows[$i]['c'][1]['v']) ? trim($rows[$i]['c'][1]['v']) : '';

        $html .= '<div class="eco-menu-item">';
        $html .= '<button type="button" class="eco-menu-toggle" aria-expanded="false">';
        $html .= '<span class="eco-menu-name">' . esc_html($name) . '</span>';
        $html .= '<span class="eco-menu-icon">+</span>';
        $html .= '</button>';

        if ($desc) {
            $html .= '<div class="eco-menu-panel" style="display:none;">';
            $html .= '<div class="eco-menu-desc">' . esc_html($desc) . '</div>';
            $html .= '</div>';
        }
        $html .= '</div>';
    }

    $html .= '</div></div>';

    // 2. Set Cache
    if ($cache_enabled) {
        set_transient($cache_key, $html, $cache_ttl);
    }

    return $html;
});";s:9:"code_type";s:3:"php";s:8:"location";s:10:"everywhere";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:0:{}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2026-02-07 10:50:21";}i:3;a:14:{s:2:"id";i:13909;s:5:"title";s:35:"Menu Schema Cache Toggle (Admin UI)";s:4:"code";s:1870:"// Add settings page
add_action('admin_menu', function () {
  add_options_page(
    'Menu Schema Cache',
    'Menu Schema Cache',
    'manage_options',
    'menu-schema-cache',
    'render_menu_schema_cache_page'
  );
});

// Register setting
add_action('admin_init', function () {
  register_setting('menu_schema_cache_group', 'menu_schema_cache_enabled');
});

// Render settings page
function render_menu_schema_cache_page() {
  $enabled = get_option('menu_schema_cache_enabled', '1');
  $message = '';

  // Handle clear cache action
  if (isset($_POST['clear_menu_schema_cache']) && check_admin_referer('clear_menu_schema_cache_action')) {
    delete_transient('bali_eco_deli_menu_schema');
    $message = 'Menu schema cache cleared successfully.';
  }
  ?>
  <div class="wrap">
    <h1>Menu Schema Cache</h1>

    <?php if ($message): ?>
      <div class="notice notice-success is-dismissible">
        <p><?php echo esc_html($message); ?></p>
      </div>
    <?php endif; ?>

    <form method="post" action="options.php" style="margin-bottom:20px;">
      <?php settings_fields('menu_schema_cache_group'); ?>
      <table class="form-table">
        <tr>
          <th scope="row">Enable Caching</th>
          <td>
            <label>
              <input type="checkbox" name="menu_schema_cache_enabled" value="1" <?php checked($enabled, '1'); ?>>
              Use cached menu schema (recommended for production)
            </label>
          </td>
        </tr>
      </table>
      <?php submit_button('Save Settings'); ?>
    </form>

    <form method="post">
      <?php wp_nonce_field('clear_menu_schema_cache_action'); ?>
      <p>
        <input type="submit" name="clear_menu_schema_cache" class="button button-secondary" value="Clear Cache Now">
      </p>
    </form>
  </div>
  <?php
}
";s:9:"code_type";s:3:"php";s:8:"location";s:10:"everywhere";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:0:{}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2026-01-16 06:48:23";}i:4;a:14:{s:2:"id";i:13908;s:5:"title";s:30:"Schema MENU from Google Sheets";s:4:"code";s:6428:"add_action('wp_head', function () {

    if (!is_page('bali-eco-deli-menu-nusa-lembongan')) return;

    $cache_key = 'bali_eco_deli_menu_schema_v2'; // Updated key to force refresh
    $cache_ttl = 12 * HOUR_IN_SECONDS;

    $cache_enabled = get_option('menu_schema_cache_enabled', '1') === '1';

    if ($cache_enabled) {
        $cached = get_transient($cache_key);
        if ($cached) {
            echo $cached;
            return;
        }
    }

    $sheet_id = '1PeRiJk05I2MTqy5QPUE1jocGlqysM7M-WOBzz6LmE3U';

    // ---- STEP 1: Read category list from __categories tab ----
    $index_url = 'https://docs.google.com/spreadsheets/d/' . $sheet_id .
                 '/gviz/tq?tqx=out:json&sheet=' . urlencode('__categories');

    $index_response = wp_remote_get($index_url, ['timeout' => 8]);
    if (is_wp_error($index_response)) return;

    $index_body = wp_remote_retrieve_body($index_response);
    $index_json = trim(substr($index_body, strpos($index_body, '{'), strrpos($index_body, '}') - strpos($index_body, '{') + 1));
    $index_data = json_decode($index_json, true);

    if (!$index_data || empty($index_data['table']['rows'])) return;

    $sections = [];

    foreach ($index_data['table']['rows'] as $row) {

        if (empty($row['c'][0]['v'])) continue;
        $tab = trim($row['c'][0]['v']);
        if (!$tab) continue;

        // ---- STEP 2: Fetch A1 for section description ----
        $desc_url = 'https://docs.google.com/spreadsheets/d/' . $sheet_id .
                    '/gviz/tq?tqx=out:json&sheet=' . urlencode($tab) .
                    '&range=A1';

        $section_desc = '';
        $desc_response = wp_remote_get($desc_url, ['timeout' => 8]);

        if (!is_wp_error($desc_response)) {
            $desc_body = wp_remote_retrieve_body($desc_response);
            $desc_json = trim(substr($desc_body, strpos($desc_body, '{'), strrpos($desc_body, '}') - strpos($desc_body, '{') + 1));
            $desc_data = json_decode($desc_json, true);

            if (!empty($desc_data['table']['rows'][0]['c'][0]['v'])) {
                $section_desc = trim($desc_data['table']['rows'][0]['c'][0]['v']);
            }
        }

        // ---- STEP 3: Fetch full sheet for menu items ----
        $url = 'https://docs.google.com/spreadsheets/d/' . $sheet_id .
               '/gviz/tq?tqx=out:json&sheet=' . urlencode($tab);

        $response = wp_remote_get($url, ['timeout' => 8]);
        if (is_wp_error($response)) continue;

        $body = wp_remote_retrieve_body($response);
        $json = trim(substr($body, strpos($body, '{'), strrpos($body, '}') - strpos($body, '{') + 1));
        $data = json_decode($json, true);

        if (!$data || empty($data['table']['rows'])) continue;

        $items = [];

        foreach ($data['table']['rows'] as $item_row) {

            // Column A = Name
            if (empty($item_row['c'][0]['v'])) continue;
            $name = trim($item_row['c'][0]['v']);
            if (!$name) continue;
            
            // Skip section header rows
            if (strcasecmp($name, $tab) === 0) continue;
            
            $has_description = !empty($item_row['c'][1]['v']);
            $has_price = !empty($item_row['c'][2]['v']);

            // Skip rows that are just section headers (no dish data)
            if (!$has_description && !$has_price) {
                continue;
            }

            // Initialize the item structure
            $item = [
                "@type" => "MenuItem",
                "name" => $name
            ];

            // --- DIETARY LOGIC (Vegan 🌱) ---
            if (strpos($name, '🌱') !== false) {
                $item['suitableForDiet'] = "https://schema.org/VeganDiet";
            }

            // --- DESCRIPTION LOGIC (Column B) ---
            if (!empty($item_row['c'][1]['v'])) {
                $item['description'] = trim($item_row['c'][1]['v']);
            }

            // --- PRICE LOGIC (Column C) ---
            if (!empty($item_row['c'][2]['v'])) {
                $price = preg_replace('/[^0-9.]/', '', $item_row['c'][2]['v']);
                if ($price) {
                    $item['offers'] = [
                        "@type" => "Offer",
                        "priceCurrency" => "IDR",
                        "price" => $price
                    ];
                }
            }

            // --- POPULARITY LOGIC (Column D) ---
            $is_popular = !empty($item_row['c'][3]['v']) &&
                          strtoupper(trim($item_row['c'][3]['v'])) === 'YES';

            if ($is_popular) {
                $item['additionalProperty'] = [
                    "@type" => "PropertyValue",
                    "name" => "Popularity",
                    "value" => "Best Seller"
                ];
                $item['keywords'] = "popular, best seller, signature dish, healthy food Lembongan";
            }

            $items[] = $item;
        }

        if (!empty($items)) {
            $section = [
                "@type" => "MenuSection",
                "name" => $tab,
                "hasMenuItem" => $items
            ];

            if ($section_desc) {
                $section['description'] = $section_desc;
            }

            $sections[] = $section;
        }
    }

    if (empty($sections)) return;

// --- FINAL SCHEMA ASSEMBLY ---
    $schema = [
        "@context" => "https://schema.org",
        "@type" => "Menu",
        "@id" => "https://baliecodeli.net/bali-eco-deli-menu-nusa-lembongan/#menu",
        "name" => "Bali ECO Deli Menu",
        "url" => get_permalink(),
        "provider" => [
            "@id" => "https://baliecodeli.net/#restaurant"
        ],  
        "inLanguage" => "en",
        "audience" => [
            "@type" => "Audience",
            "audienceType" => "Tourists and travelers in Nusa Lembongan"
        ],
        "hasMenuSection" => $sections
    ];

    // Encode and wrap in a single set of tags
    $output = '<script type="application/ld+json">' . 
              wp_json_encode($schema, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) . 
              '</script>';

    if ($cache_enabled) {
        set_transient($cache_key, $output, $cache_ttl);
    }

    echo $output;
});";s:9:"code_type";s:3:"php";s:8:"location";s:10:"everywhere";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:0:{}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2026-02-02 19:34:20";}i:5;a:14:{s:2:"id";i:13905;s:5:"title";s:13:"Schema Global";s:4:"code";s:4653:"// 1. Fetch + cache live Google rating 
function bali_eco_deli_get_google_rating() {
	$cache_key = 'bali_eco_deli_google_rating'; 
	$cache_ttl = 24 * HOUR_IN_SECONDS; 	// refresh daily 
	$cached = get_transient($cache_key);
	if ($cached) { 
        return $cached; 
	} 
	
    // CONFIG 
	$api_key = 'AIzaSyDYicYrnTLXYzeXBdbP2ifv46yFa1AeqLI'; 
	$place_id = 'ChIJtyxZygpt0i0RnOnelbdsHh0'; 
	
	if (!$api_key || !$place_id) return false; 
	
	$url = add_query_arg([ 
		'place_id' => $place_id,
		'fields' => 'rating,user_ratings_total', 
		'key' => $api_key 
	], 'https://maps.googleapis.com/maps/api/place/details/json'); 
	
	$response = wp_remote_get($url, ['timeout' => 8]); 
	if (is_wp_error($response)) return false; 
	
	$body = json_decode(wp_remote_retrieve_body($response), true); 
	if (empty($body['result']['rating'])) return false;
	
	$data = [ 
		'ratingValue' => (string) $body['result']['rating'], 
		'reviewCount' => (string) $body['result']['user_ratings_total']
	]; 
	
	set_transient($cache_key, $data, $cache_ttl); 
	return $data; 
} 

// 2. Inject schema (WITH EXCLUSION FOR ABOUT PAGE)
add_action('wp_head', function () {
    
    // --- ADDED EXCLUSION LOGIC HERE ---
    // This tells WordPress: "If this is the about-us page, stop and don't print this code."
    if ( is_page('about-bali-eco-deli-nusa-lembongan') ) {
        return;
    }
    // ----------------------------------

	$rating = bali_eco_deli_get_google_rating(); 
	
    // Fallback values if API fails 
	$ratingValue = $rating ? $rating['ratingValue'] : "4.7";
	$reviewCount = $rating ? $rating['reviewCount'] : "1880"; 
?> 

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Restaurant",
      "@id": "https://baliecodeli.net/#restaurant",
      "name": "Bali ECO Deli",
      "url": "https://baliecodeli.net/restaurant-location-nusa-lembongan/",
      "logo": "https://baliecodeli.net/wp-content/uploads/2026/01/Logo-Bali-ECO-Deli-600.webp",
      "image": "https://baliecodeli.net/wp-content/uploads/2026/02/hero_home.webp",
      "description": "Healthy and eco-conscious café and restaurant in Jungut Batu, Nusa Lembongan, serving fresh, nourishing food with vegetarian and vegan options.",
      "telephone": "0821-3732-7521",
      "priceRange": "$$",
      "servesCuisine": ["Healthy","Cafe","Brunch","Vegetarian","Vegan"],
      "amenityFeature": [
        {
          "@type": "LocationFeatureSpecification",
          "name": "High-Speed Starlink WiFi",
          "value": true
        },
        {
          "@type": "LocationFeatureSpecification",
          "name": "Solar Powered",
          "value": true
        }
      ],
      "knowsAbout": [
        "Sustainability",
        "Plastic Recycling Program",
        "Composting",
        "Palm Oil Free Cooking"
      ],
      "keywords": "Starlink WiFi, Healthy Cafe Lembongan, Solar Powered Restaurant, Plastic Recycling Bali",
      "address": {
        "@type": "PostalAddress",
        "streetAddress": "Jl. Jungutbatu",
        "addressLocality": "Nusa Lembongan",
        "addressRegion": "Kabupaten Klungkung, Bali",
        "postalCode": "80771",
        "addressCountry": "ID"
      },
      "containedInPlace": {
        "@type": "Place",
        "name": "Kec. Nusa Penida"
      },
      "geo": {
        "@type": "GeoCoordinates",
        "latitude": -8.671957,
        "longitude": 115.4493599
      },
      "openingHoursSpecification": {
        "@type": "OpeningHoursSpecification",
        "dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],
        "opens": "07:00",
        "closes": "21:00"
      },
      "aggregateRating": {
        "@type": "AggregateRating",
        "ratingValue": "<?php echo esc_js($ratingValue); ?>",
        "reviewCount": "<?php echo esc_js($reviewCount); ?>"
      },
      "sameAs": [
        "https://www.instagram.com/baliecodeli",
        "https://www.facebook.com/baliecodeli"
      ],
	  "hasMenu": { "@id": "https://baliecodeli.net/bali-eco-deli-menu-nusa-lembongan/#menu"  },
      "hasMap": "https://www.google.com/maps/place/?q=place_id:ChIJtyxZygpt0i0RnOnelbdsHh0",
      "mainEntityOfPage": "https://baliecodeli.net/restaurant-location-nusa-lembongan/"
    },
    {
      "@type": "WebSite",
      "@id": "https://baliecodeli.net/#website",
      "url": "https://baliecodeli.net/",
      "name": "Bali ECO Deli",
      "publisher": { "@id": "https://baliecodeli.net/#restaurant" }
    }
  ]
}
</script>

<?php });";s:9:"code_type";s:3:"php";s:8:"location";s:10:"everywhere";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:0:{}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2026-02-08 17:25:58";}i:6;a:14:{s:2:"id";i:13182;s:5:"title";s:19:"Breadcrumbs dynamic";s:4:"code";s:1216:"// Breadcrumb Schema (Page-Specific, JSON Safe)
add_action('wp_head', function () {

  if (is_admin()) return;

  global $post;
  if (!$post) return;

  $items = [];
  $position = 1;

  // Home
  $items[] = [
    "@type" => "ListItem",
    "position" => $position++,
    "name" => "Home",
    "item" => home_url('/')
  ];

  // Parent pages (if any)
  if ($post->post_parent) {
    $parents = array_reverse(get_post_ancestors($post));
    foreach ($parents as $parent_id) {
      $items[] = [
        "@type" => "ListItem",
        "position" => $position++,
        "name" => wp_strip_all_tags(get_the_title($parent_id)),
        "item" => get_permalink($parent_id)
      ];
    }
  }

  // Current page
  $items[] = [
    "@type" => "ListItem",
    "position" => $position++,
    "name" => wp_strip_all_tags(get_the_title($post)),
    "item" => get_permalink($post)
  ];

  $data = [
    "@context" => "https://schema.org",
    "@type" => "BreadcrumbList",
    "itemListElement" => $items
  ];
  ?>
<script type="application/ld+json">
<?php echo wp_json_encode($data, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT); ?>
</script>
  <?php
});
";s:9:"code_type";s:3:"php";s:8:"location";s:10:"everywhere";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:2:{s:4:"show";s:4:"show";s:6:"groups";a:1:{i:0;a:1:{i:0;a:4:{s:4:"type";s:4:"page";s:6:"option";s:12:"type_of_page";s:8:"relation";s:1:"=";s:5:"value";s:13:"is_front_page";}}}}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2026-01-22 06:49:19";}i:7;a:14:{s:2:"id";i:12947;s:5:"title";s:31:"Remove WordPress Version Number";s:4:"code";s:55:"add_filter('the_generator', '__return_empty_string');
";s:9:"code_type";s:3:"php";s:8:"location";s:10:"everywhere";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:0:{}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2025-12-27 14:58:52";}i:8;a:14:{s:2:"id";i:12927;s:5:"title";s:29:"Disable AIOSEO Schema markups";s:4:"code";s:133:"add_filter( 'aioseo_schema_disable', 'aioseo_disable_schema' );
function aioseo_disable_schema( $disabled ) {
    return true;
}
";s:9:"code_type";s:3:"php";s:8:"location";s:10:"everywhere";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:0:{}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2025-12-30 15:23:52";}i:9;a:14:{s:2:"id";i:12765;s:5:"title";s:27:"Completely Disable Comments";s:4:"code";s:1206:"add_action('admin_init', function () {
    // Redirect any user trying to access comments page
    global $pagenow;
    
    if ($pagenow === 'edit-comments.php') {
        wp_safe_redirect(admin_url());
        exit;
    }

    // Remove comments metabox from dashboard
    remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');

    // Disable support for comments and trackbacks in post types
    foreach (get_post_types() as $post_type) {
        if (post_type_supports($post_type, 'comments')) {
            remove_post_type_support($post_type, 'comments');
            remove_post_type_support($post_type, 'trackbacks');
        }
    }
});

// Close comments on the front-end
add_filter('comments_open', '__return_false', 20, 2);
add_filter('pings_open', '__return_false', 20, 2);

// Hide existing comments
add_filter('comments_array', '__return_empty_array', 10, 2);

// Remove comments page in menu
add_action('admin_menu', function () {
    remove_menu_page('edit-comments.php');
});

// Remove comments links from admin bar
add_action('admin_bar_menu', function () {
    remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60);
}, 0);";s:9:"code_type";s:3:"php";s:8:"location";s:10:"everywhere";s:11:"auto_insert";i:1;s:13:"insert_number";i:1;s:9:"use_rules";b:0;s:5:"rules";a:0:{}s:8:"priority";i:10;s:14:"location_extra";s:0:"";s:20:"shortcode_attributes";a:0:{}s:13:"compiled_code";s:0:"";s:8:"modified";s:19:"2025-12-27 09:12:40";}}}