/** * 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 ); } } Public - Bun Apeti - Burgers and more

Public

Avancerad vägledning för Lodur casino inom spelande Maximera dina vinster

Avancerad vägledning för Lodur casino inom spelande Maximera dina vinster Introduktion till Lodur Casino Lodur Casino har snabbt blivit en populär destination för spelentusiaster i Sverige. Med en imponerande samling av över 4 400 spel, inklusive slotmaskiner, bordsspel och live dealer-alternativ, erbjuder detta onlinecasino något för alla. En av de mest lockande aspekterna av Lodur

Avancerad vägledning för Lodur casino inom spelande Maximera dina vinster Read More »

Məşhur kazino 1win dünyasında ən yaxşı yerin kəşfi

Məşhur kazino 1win dünyasında ən yaxşı yerin kəşfi 1win Kazinosunun Tanınması 1win, müasir onlayn kazino və idman mərcləri platforması olaraq, istifadəçilərinə geniş oyun çeşidi və cəlbedici bonuslar təqdim edir. 90-dan çox ölkədə fəaliyyət göstərməsi, onu qlobal miqyasda tanınmış bir marka halına gətirir. Kazino, müştərilərinin əyləncəsini artırmaq üçün innovativ oyunlar və maraqlı promolar təklif edir. Eyni

Məşhur kazino 1win dünyasında ən yaxşı yerin kəşfi Read More »

Famous wins at spinlander casino Unveiling the luckiest moments in casino history

Famous wins at spinlander casino Unveiling the luckiest moments in casino history Unforgettable Jackpot Wins SpinLander Casino has witnessed some unforgettable jackpot wins that have changed the lives of players overnight. With its vast array of slot games, many players have hit life-altering jackpots, sometimes exceeding six figures. These thrilling moments not only create excitement

Famous wins at spinlander casino Unveiling the luckiest moments in casino history Read More »

Insider Tipps von ice fishing game online So gewinnst du im Casino

Insider Tipps von ice fishing game online So gewinnst du im Casino Die Grundlagen des Ice Fishing Games verstehen Das Ice Fishing Game ist ein aufregendes Live-Game-Show-Erlebnis, das Spielern die Möglichkeit bietet, auf ein virtuelles Geldrad zu setzen. Bevor du mit dem Spiel beginnst, ist es wichtig, die Grundregeln und die Struktur des Spiels zu

Insider Tipps von ice fishing game online So gewinnst du im Casino Read More »

Day trading vs. swing trading Which strategy suits quotex for optimal gains

Day trading vs. swing trading Which strategy suits quotex for optimal gains Understanding Day Trading Day trading is a strategy that involves buying and selling financial instruments within the same trading day. Traders aim to capitalize on short-term market movements, making numerous trades throughout the day. This approach requires a deep understanding of market fluctuations

Day trading vs. swing trading Which strategy suits quotex for optimal gains Read More »

Najpopularniejsze gry w kasynie przewodnik dla początkujących w Sweet Bonanza

Najpopularniejsze gry w kasynie przewodnik dla początkujących w Sweet Bonanza Wprowadzenie do gier kasynowych Gry kasynowe cieszą się ogromną popularnością na całym świecie, przyciągając zarówno doświadczonych graczy, jak i nowicjuszy. Wiele osób szuka w nich nie tylko rozrywki, ale także możliwości na wygraną. Zrozumienie zasad oraz mechaniki gier jest kluczowe dla każdego, kto chce skutecznie

Najpopularniejsze gry w kasynie przewodnik dla początkujących w Sweet Bonanza Read More »

Машинаңызды басқару Жауапты құмар ойынға арналған chicken road нұсқаулары

Машинаңызды басқару Жауапты құмар ойынға арналған chicken road нұсқаулары Chicken Road ойын туралы жалпы мәлімет Chicken Road — Қазақстанда кең танымал InOut Games провайдерінен шыққан интерактивті ойын. Ойыншылар тауықты түрлі люктармен жабылған жолдан өткізу арқылы ұтыстарын көбейте алады. Бұл ойынның ерекшелігі, ойыншылардың тактика және стратегияларды жинақтауына үлкен мүмкіндік береді, өйткені chicken road mobile play ойын

Машинаңызды басқару Жауапты құмар ойынға арналған chicken road нұсқаулары 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