/** * Starter Content Compatibility. * * @since 4.0.0 * @package Astra */ /** * Class Astre_Starter_Content */ class Astra_Starter_Content { public const HOME_SLUG = 'home'; public const ABOUT_SLUG = '#about'; public const SERVICES_SLUG = '#services'; public const REVIEWS_SLUG = '#reviews'; public const WHY_US_SLUG = '#whyus'; public const CONTACT_SLUG = '#contact'; /** * Constructor */ public function __construct() { $is_fresh_site = get_option( 'fresh_site' ); if ( ! $is_fresh_site ) { return; } // Adding post meta and inserting post. add_action( 'wp_insert_post', array( $this, 'register_listener', ), 3, 99 ); // Save astra settings into database. add_action( 'customize_save_after', array( $this, 'save_astra_settings', ), 10, 3 ); if ( ! is_customize_preview() ) { return; } // preview customizer values. add_filter( 'default_post_metadata', array( $this, 'starter_meta' ), 99, 3 ); add_filter( 'astra_theme_defaults', array( $this, 'theme_defaults' ) ); add_filter( 'astra_global_color_palette', array( $this, 'theme_color_palettes_defaults' ) ); } /** * Load default starter meta. * * @since 4.0.2 * @param mixed $value Value. * @param int $post_id Post id. * @param string $meta_key Meta key. * * @return string Meta value. */ public function starter_meta( $value, $post_id, $meta_key ) { if ( get_post_type( $post_id ) !== 'page' ) { return $value; } if ( 'site-content-layout' === $meta_key ) { return 'plain-container'; } if ( 'theme-transparent-header-meta' === $meta_key ) { return 'enabled'; } if ( 'site-sidebar-layout' === $meta_key ) { return 'no-sidebar'; } if ( 'site-post-title' === $meta_key ) { return 'disabled'; } return $value; } /** * Register listener to insert post. * * @since 4.0.0 * @param int $post_ID Post Id. * @param \WP_Post $post Post object. * @param bool $update Is update. */ public function register_listener( $post_ID, $post, $update ) { if ( $update ) { return; } $custom_draft_post_name = get_post_meta( $post_ID, '_customize_draft_post_name', true ); $is_from_starter_content = ! empty( $custom_draft_post_name ); if ( ! $is_from_starter_content ) { return; } if ( 'page' === $post->post_type ) { update_post_meta( $post_ID, 'site-content-layout', 'plain-container' ); update_post_meta( $post_ID, 'theme-transparent-header-meta', 'enabled' ); update_post_meta( $post_ID, 'site-sidebar-layout', 'no-sidebar' ); update_post_meta( $post_ID, 'site-post-title', 'disabled' ); } } /** * Get customizer json * * @since 4.0.0 * @return mixed value. */ public function get_customizer_json() { try { $request = wp_remote_get( ASTRA_THEME_URI . 'inc/compatibility/starter-content/astra-settings-export.json' ); } catch ( Exception $ex ) { $request = null; } if ( is_wp_error( $request ) ) { return false; // Bail early. } // @codingStandardsIgnoreStart /** * @psalm-suppress PossiblyNullReference * @psalm-suppress UndefinedMethod * @psalm-suppress PossiblyNullArrayAccess * @psalm-suppress PossiblyNullArgument * @psalm-suppress InvalidScalarArgument */ return json_decode( $request['body'], 1 ); // @codingStandardsIgnoreEnd } /** * Save Astra customizer settings into database. * * @since 4.0.0 */ public function save_astra_settings() { $settings = self::get_customizer_json(); // Delete existing dynamic CSS cache. delete_option( 'astra-settings' ); if ( ! empty( $settings['customizer-settings'] ) ) { foreach ( $settings['customizer-settings'] as $option => $value ) { update_option( $option, $value ); } } } /** * Load default astra settings. * * @since 4.0.0 * @param mixed $defaults defaults. * @return mixed value. */ public function theme_defaults( $defaults ) { $json = ''; $settings = self::get_customizer_json(); if ( ! empty( $settings['customizer-settings'] ) ) { $json = $settings['customizer-settings']['astra-settings']; } return $json ? $json : $defaults; } /** * Load default color palettes. * * @since 4.0.0 * @param mixed $defaults defaults. * @return mixed value. */ public function theme_color_palettes_defaults( $defaults ) { $json = ''; $settings = self::get_customizer_json(); if ( ! empty( $settings['customizer-settings'] ) ) { $json = $settings['customizer-settings']['astra-color-palettes']; } return $json ? $json : $defaults; } /** * Return starter content definition. * * @return mixed|void * @since 4.0.0 */ public function get() { $nav_items_header = array( 'home' => array( 'type' => 'post_type', 'object' => 'page', 'object_id' => '{{' . self::HOME_SLUG . '}}', ), 'about' => array( 'title' => __( 'Services', 'astra' ), 'type' => 'custom', 'url' => '{{' . self::SERVICES_SLUG . '}}', ), 'services' => array( 'title' => __( 'About', 'astra' ), 'type' => 'custom', 'url' => '{{' . self::ABOUT_SLUG . '}}', ), 'reviews' => array( 'title' => __( 'Reviews', 'astra' ), 'type' => 'custom', 'url' => '{{' . self::REVIEWS_SLUG . '}}', ), 'faq' => array( 'title' => __( 'Why Us', 'astra' ), 'type' => 'custom', 'url' => '{{' . self::WHY_US_SLUG . '}}', ), 'contact' => array( 'title' => __( 'Contact', 'astra' ), 'type' => 'custom', 'url' => '{{' . self::CONTACT_SLUG . '}}', ), ); $content = array( 'attachments' => array( 'logo' => array( 'post_title' => _x( 'Logo', 'Theme starter content', 'astra' ), 'file' => 'inc/assets/images/starter-content/logo.png', ), ), 'theme_mods' => array( 'custom_logo' => '{{logo}}', ), 'nav_menus' => array( 'primary' => array( 'name' => esc_html__( 'Primary', 'astra' ), 'items' => $nav_items_header, ), 'mobile_menu' => array( 'name' => esc_html__( 'Primary', 'astra' ), 'items' => $nav_items_header, ), ), 'options' => array( 'page_on_front' => '{{' . self::HOME_SLUG . '}}', 'show_on_front' => 'page', ), 'posts' => array( self::HOME_SLUG => require ASTRA_THEME_DIR . 'inc/compatibility/starter-content/home.php', // PHPCS:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound ), ); return apply_filters( 'astra_starter_content', $content ); } } Uncategorized - Bun Apeti - Burgers and more

Uncategorized

Ripper Casino Canada: Top Strategies for Big Wins

Welcome to the exciting world of online gaming in Canada! If you’re looking for a thrilling and rewarding experience, exploring platforms like https://rippercasinos-ca.com/ can open up a universe of possibilities. This guide is designed to help you navigate the digital casino landscape and discover strategies that can enhance your gameplay. Get ready to elevate your […]

Ripper Casino Canada: Top Strategies for Big Wins Read More »

Ripper Casino Canada: Top Strategies for Big Wins

Welcome to the exciting world of online gaming in Canada! If you’re looking for a thrilling and rewarding experience, exploring platforms like https://rippercasinos-ca.com/ can open up a universe of possibilities. This guide is designed to help you navigate the digital casino landscape and discover strategies that can enhance your gameplay. Get ready to elevate your

Ripper Casino Canada: Top Strategies for Big Wins Read More »

Spannend avontuur wacht loop de Chicken Road, verzamel winsten en ontsnap aan de val!

Spannend avontuur wacht: loop de Chicken Road, verzamel winsten en ontsnap aan de val! Het Principe van de Chicken Road Strategieën voor de Chicken Road Conservatieve Strategie Agressieve Strategie De Martingale Strategie (met risico’s!) Psychologische Aspecten van de Chicken Road Het Belang van Verantwoord Spelen Conclusies Spannend avontuur wacht: loop de Chicken Road, verzamel winsten

Spannend avontuur wacht loop de Chicken Road, verzamel winsten en ontsnap aan de val! Read More »

Przejdź Test na Odwagę chicken road gra – Pomóż Pierzastej Bohaterce Przedostać się Przez Coraz Więk

Przejdź Test na Odwagę: chicken road gra – Pomóż Pierzastej Bohaterce Przedostać się Przez Coraz Większy Ruch i Pobij Swój Rekord! Jak Działa Mechanika Gry Chicken Road Gra? Strategie Przetrwania w Chicken Road Gra Znaczenie Refleksu w Chicken Road Gra Jak Zwiększyć Swoje Szanse na Pobicie Rekordu? Podsumowanie Przejdź Test na Odwagę: chicken road gra

Przejdź Test na Odwagę chicken road gra – Pomóż Pierzastej Bohaterce Przedostać się Przez Coraz Więk Read More »

Elevate Your Play Could the winspirit casino experience be your next big victory in online entertain

Elevate Your Play: Could the winspirit casino experience be your next big victory in online entertainment? Understanding the Game Selection at winspirit Casino Navigating the winspirit Casino Platform Account Management and Security Deposit and Withdrawal Options Exploring Bonuses and Promotions at winspirit Casino Customer Support and Responsible Gaming at winspirit Casino Final Thoughts on the

Elevate Your Play Could the winspirit casino experience be your next big victory in online entertain Read More »

Забудьте о рутине olimp — ставки на победу и море азарта прямо сейчас!

Забудьте о рутине: olimp — ставки на победу и море азарта прямо сейчас! Изучение основ онлайн-казино: от регистрации до первых ставок Разнообразие игр в онлайн-казино: слоты, рулетка, покер и многое другое Система бонусов и акций: как максимизировать свои шансы на выигрыш Мобильное казино: играйте где угодно и когда угодно Безопасность и честность в онлайн-казино: как

Забудьте о рутине olimp — ставки на победу и море азарта прямо сейчас! Read More »

Beyond the Bets Elevate Your Game with ecuabet’s Thrilling Online Casino Experience._13

Beyond the Bets: Elevate Your Game with ecuabet’s Thrilling Online Casino Experience. Understanding the ecuabet Platform A Diverse Range of Games Slot Game Variety Table Game Selection Live Dealer Games Security and Fair Play Payment Options and Customer Support Maximizing Your ecuabet Experience Beyond the Bets: Elevate Your Game with ecuabet’s Thrilling Online Casino Experience.

Beyond the Bets Elevate Your Game with ecuabet’s Thrilling Online Casino Experience._13 Read More »

Casino Brango Canada: Inspiring Player Success Stories

The digital landscape of online gaming offers a thrilling avenue for entertainment and the potential for significant wins. Many players flock to platforms seeking not just excitement but also the chance to change their fortunes through strategic play and a bit of luck. For those exploring the Canadian market, understanding the experiences of fellow players

Casino Brango Canada: Inspiring Player Success Stories Read More »

/** * Template part for displaying the footer info. * * @link https://codex.wordpress.org/Template_Hierarchy * * @package Astra * @since 1.0.0 */ ?>
Scroll to Top