/** * 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 927 of 2849 - Something out of the Box

Cycling Race Rest Stop Miss Joker Slot Competition in Canada

This summer, something different is arriving in Canada’s cycling scene. The “Cycling Race Rest Stop Missjokerslot Competition” is getting underway, a national event that blends the toughness of a bike race with the glamour and luck of Canada’s popular Miss Joker online slot. Visualize this: you’re at a race, the air humming with crowd noise […]

Cycling Race Rest Stop Miss Joker Slot Competition in Canada Read More »

Is SkyHills Casino een betrouwbaar Veilig Online Casino voor Spelers in Nederland?

Voor Nederlandse spelers is veiligheid het eerste waar ze naar kijken bij een online casino. Deze analyse van Skyhills Bet Casino beoordeelt alle facetten die bepalen of dit platform een veilige keuze is. We gaan voorbij aan de bonussen en spellen om de fundamenten te beoordelen: de geldigheid van de licentie, de kwaliteit van de

Is SkyHills Casino een betrouwbaar Veilig Online Casino voor Spelers in Nederland? Read More »

Competitive Gaming and Competitive Gaming in Fire Joker Slot for Canada

Canadian slot fans have watched the simple act of spinning reels transform into something more social. The digital casino floor now buzzes with competition, and firejokerslot is right in the middle of that change. This title, with its colorful, classic look and simple rules, has turned into a go-to arena for events. Here, players battle

Competitive Gaming and Competitive Gaming in Fire Joker Slot for Canada Read More »

Simplest Way to Begin Playing Playing Slots at BetSixty Casino for Netherlands

Lust om meteen de beste online slots van Nederland te testen? Bij BetSixty Casino begin je sneller met spelen dan je misschien hoopt betsixtycasino.eu. Het platform biedt een vliegende start, dankzij een duidelijke site en een aanmelding die je in een paar minuten afhandelt. Deze gids laat je precies ontdekken hoe je van je geliefde

Simplest Way to Begin Playing Playing Slots at BetSixty Casino for Netherlands Read More »

Ekskluzywne Free Spins dla Graczy z Polski na Total Casino

Darmowe spiny to w kasynach online jeden z tych dodatków, na które czeka każdy gracz. Oferują szansę na wygraną bez wykorzystywania własnego budżetu. Total Casino świetnie wie, jak ważne są one dla polskich klientów. Dlatego też przygotowało specjalne, ekskluzywne oferty free spins. Są one nie tylko interesujące, ale przede wszystkim mają realną wartość. W tym

Ekskluzywne Free Spins dla Graczy z Polski na Total Casino Read More »

Efficiënter Spelen en Grotere Beloningen Krijgen bij Spinalto Casino voor België

Voor een Belgische speler zoals ik gaat een goed casino over vertrouwen én over praktische middelen om het spel beter te maken. Bij Spinalto Casino merk ik dat slimmer spelen en meer beloningen krijgen nauw samengaan. Dit platform levert een zorgvuldige combinatie van bekende spellen, transparante voorwaarden en promoties die echt voor de Belgische markt

Efficiënter Spelen en Grotere Beloningen Krijgen bij Spinalto Casino voor België Read More »

Gekeurd, Gecontroleerd en Altijd Spannend voor de Nederlandse markt met Binobet Casino

Hartelijk welkom bij Binobet Casino, de internetlocatie voor spelers uit Nederland die een veilige en bruisende speelervaring verlangen https://binobet.eu/. We bieden een breed spelenaanbod aan, verzekerd eerlijk door een Europese erkenning, en we richten ons expliciet op de Nederlandse markt. Je pret en beveiliging staan bij ons op de eerste plaats, zodat je met een

Gekeurd, Gecontroleerd en Altijd Spannend voor de Nederlandse markt met Binobet Casino Read More »

Unibet Casino ger spänning men ständigt schysst för oss i Sverige

Unibet Casino utgör ett av de ställen som omedelbart poppar upp i medvetandet när jag önskar såväl spänning och säkerhet. För oss i Sverige är det mer än en spelplattform. Det känns som som en komplett värld skapad på hederlighet och underhållning, där båda aspekterna får just lika mycket fokus. Som en person som har

Unibet Casino ger spänning men ständigt schysst för oss i Sverige Read More »

Hollandse Community Samenbrengt Rond Wisdom of Athena Slot Belevenissen

Een golf van gezamenlijke passie verenigt spelers in ons land. Het Wisdom Of Athena slot is meer dan een spel; het is een maatschappelijk fenomeen geworden. Hoe hebben deze Griekse belevenissen een levendige gemeenschap gecreëerd? Van tactiekbesprekingen tot het bijwonen van grote prijzen, de gezamenlijkeenergie is merkbaar. We onderzoeken deze unieke band en zoeken uit

Hollandse Community Samenbrengt Rond Wisdom of Athena Slot Belevenissen 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