/** * 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

Discovering the secrets of effective blackjack strategies

Understanding the Basics of Blackjack Before diving into advanced strategies, it is essential to grasp the fundamental concepts of blackjack. Blackjack, a popular card game found in various gaming establishments, revolves around the objective of obtaining a hand value closer to 21 than the dealer without exceeding it. Each player starts with two cards and […]

Discovering the secrets of effective blackjack strategies Read More »

Qumarın hüquqi mənzərəsi Azərbaycanda nələri bilməlisiniz

Qumarın hüquqi mənzərəsi Azərbaycanda nələri bilməlisiniz Qumarın hüquqi statusu Azərbaycanda qumar oyunu qanunları müzakirə olunan mövzular arasındadır. Qanunvericilikdə qumarın necə tənzimləndiyi, hansı növ oyunların icazə verildiyi və hansılarının qadağan edildiyi ətrafında aydın təsəvvür formalaşdırmaq önəmlidir. Məsələn, ölkədə yalnız xüsusi lisenziyası olan müəssisələrdə qumar oyunları təşkil oluna bilər. Oyunçular, Mellstroy Casino tətbiqi ilə daha geniş imkanlardan

Qumarın hüquqi mənzərəsi Azərbaycanda nələri bilməlisiniz Read More »

Esplora i Casinò non AAMS in Italia: la selezione di giochi e i metodi

Nell’ultimo decennio, il panorama del gioco d’azzardo online in Italia ha visto una crescita esponenziale, portando alla nascita di numerosi casinò non AAMS. Queste piattaforme offrono ai giocatori una varietà di esperienze, da giochi innovativi a bonus allettanti. Questo articolo si propone di esplorare i casinò non AAMS, come ad esempio casino non AAMS ,

Esplora i Casinò non AAMS in Italia: la selezione di giochi e i metodi Read More »

Як організувати надійний редакційний процес — 067

Як організувати надійний редакційний процес — 067 Команда заздалегідь узгоджує структуру матеріалу, щоб читач легко знаходив потрібний контекст і не губився між деталями. Практичні приклади допомагають пояснити складні рішення без зайвої термінології та зберігають природний ритм розповіді. Перед публікацією автор перевіряє факти, назви, послідовність аргументів і коректність усіх допоміжних матеріалів. Візуальні елементи доречно підтримують текст,

Як організувати надійний редакційний процес — 067 Read More »

Як організувати надійний редакційний процес — 067

Як організувати надійний редакційний процес — 067 Команда заздалегідь узгоджує структуру матеріалу, щоб читач легко знаходив потрібний контекст і не губився між деталями. Практичні приклади допомагають пояснити складні рішення без зайвої термінології та зберігають природний ритм розповіді. Перед публікацією автор перевіряє факти, назви, послідовність аргументів і коректність усіх допоміжних матеріалів. Візуальні елементи доречно підтримують текст,

Як організувати надійний редакційний процес — 067 Read More »

Як організувати надійний редакційний процес — 067

Як організувати надійний редакційний процес — 067 Команда заздалегідь узгоджує структуру матеріалу, щоб читач легко знаходив потрібний контекст і не губився між деталями. Практичні приклади допомагають пояснити складні рішення без зайвої термінології та зберігають природний ритм розповіді. Перед публікацією автор перевіряє факти, назви, послідовність аргументів і коректність усіх допоміжних матеріалів. Візуальні елементи доречно підтримують текст,

Як організувати надійний редакційний процес — 067 Read More »

Як організувати надійний редакційний процес — 067

Як організувати надійний редакційний процес — 067 Команда заздалегідь узгоджує структуру матеріалу, щоб читач легко знаходив потрібний контекст і не губився між деталями. Практичні приклади допомагають пояснити складні рішення без зайвої термінології та зберігають природний ритм розповіді. Перед публікацією автор перевіряє факти, назви, послідовність аргументів і коректність усіх допоміжних матеріалів. Візуальні елементи доречно підтримують текст,

Як організувати надійний редакційний процес — 067 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