/** * 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 ); } } Bun Apeti - Burgers and more - Page 933 of 2828 - Something out of the Box

Gamblerina Casino platform Delivers Play Victory and Enjoy Quick Payments in Canada

For Canadian players, getting your winnings fast matters just as much as the game itself https://gamblerinacasino.eu.com/. Gamblerina Casino knows this. They’ve developed their service around instant payouts. Let’s look at how this platform manages money quickly while also creating a fun, trustworthy site for Canadians to play. What Makes Fast Withdrawals So Vital for Players? […]

Gamblerina Casino platform Delivers Play Victory and Enjoy Quick Payments in Canada Read More »

Wakacyjne chwile w Polsce z Poolside Gaming Joker Stoker Slot

Polskie lato rozkręciło się na dobre jokerstoker.it.com. Poszukujemy pomysłów, jak je uatrakcyjnić. Kiedy słońce grzeje, a my marzymy o błogim lenistwie, można połączyć przyjemne z pożytecznym – wypoczynek na powietrzu z odrobiną ekscytującej rozrywki. Zachęcamy do Joker Stoker Slot, grę, która angażuje jak letni wiatr i rozpala emocje niczym słońce nagrzewające piasek. Dzięki niej każda

Wakacyjne chwile w Polsce z Poolside Gaming Joker Stoker Slot Read More »

Voice Comes Alive: Vox Casino dodaje wsparcie audio w Polsce

W kasynach online od lat panuje obraz – ostre grafiki 4K, migoczące animacje, feeria świateł. Tymczasem gdzieś w tle pozostał niedoceniany bohater: dźwięk. To właśnie on umie dopełnić wrażenia, dodać realizmu i wywołać prawdziwe emocje. Vox Casino Poker zdecydował się to zmienić. Dla naszej polskiej społeczności wdrożyliśmy zaawansowaną obsługę audio. To nie jest tylko kilka

Voice Comes Alive: Vox Casino dodaje wsparcie audio w Polsce Read More »

Przyszły kierunek rozrywki hazardowej online w Polsce to Sloterra Casino

Polski sektor gier online stale ulega przemianom. Użytkownicy szukają miejsc, gdzie innowacje spotykają się z poczuciem pewności. Sloterra Casino wyłania się jako platforma, która nie tylko spełnia te pragnienia, ale także demonstruje, jak może wyglądać dalszy rozwój branży. Analiza jego oferty, zaplecza technicznego i stosunkom z klientami sugeruje, że właśnie tutaj mogą powstawać przyszłe standardy

Przyszły kierunek rozrywki hazardowej online w Polsce to Sloterra Casino Read More »

Are Canada Players Loving Gamblerina Casino? Find Out Why Players Stay Coming Back

In the competitive landscape of online gaming in Canada, a new contender has been gaining traction. Gamblerina Casino has quickly carved out a space for itself, garnering a dedicated and growing player base. The question isn’t simply whether the platform exists, but why Canadian players are actively selecting it and, more importantly, revisiting to it

Are Canada Players Loving Gamblerina Casino? Find Out Why Players Stay Coming Back Read More »

Sports Meet Casino: Roulettino Casino Combines Betting Experiences in Australia

At Roulettino Casino, we consider the last-minute goal and the spin of a roulette wheel as pieces of the same excitement https://roulettinocasinoo.com/. Our mission is to build a platform where sports and casino betting don’t just coexist, but actively merge. For Australian players, this creates a single hub for all your action. You can gather

Sports Meet Casino: Roulettino Casino Combines Betting Experiences in Australia Read More »

De Top Betaalmethoden om te Toepassen bij Likesbet Casino voor Gebruikers uit Nederland

Een juiste betaalmethode kiezen zorgt voor je casino-ervaring een aanzienlijk gemakkelijker en prettiger. likesbetcasino heeft voor Nederlandse spelers een ruime keuze aan vertrouwde en effectieve opties gereed. We lopen de meest populaire methoden met je na, van iDEAL tot creditcards en e-wallets. Je verkrijgt inzicht in de snellheid, mogelijke kosten en de soliditeit. Met deze

De Top Betaalmethoden om te Toepassen bij Likesbet Casino voor Gebruikers uit Nederland Read More »

Miejsce Darmowych Spinów i Bonusów w Polsce to Yeet Casino

Witamy w świecie, gdzie bonusy oczekują za każdym rogiem, a użytkownicy z Polski mogą odczuć prawdziwą wartość gry online https://yeet-pl.com/. Jesteśmy dumni, że możemy pokazać Yeet Casino jako miejsce, które kładzie nacisk na szczodrość i stałą grę. Nasza platforma została zaprojektowana z myślą o tych, którzy szanują sobie nie tylko wrażenia związane z grami, ale

Miejsce Darmowych Spinów i Bonusów w Polsce to Yeet Casino Read More »

Network Configuration and Network Configuration for Ultra Hot Deluxe Slot

Establishing a consistent and protected connection is your initial step to playing any game online https://ultrahotdeluxe.net/. For Ultra Hot Deluxe Slot, a seamless network setup means no interruptions, rapid access, and keeping your personal data secure. Most connection problems do not arise from the game itself. They typically originate with your own device settings, your

Network Configuration and Network Configuration for Ultra Hot Deluxe Slot 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