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

Cómo Tomar Tabletas de Parabolan: Guía Práctica

“`html Tabla de Contenido Introducción Modo de Uso Precauciones Conclusión Introducción Parabolan es un análogo de la hormona del crecimiento que se utiliza principalmente en el ámbito de la mejora física y el rendimiento deportivo. Es importante comprender cómo tomar tabletas de Parabolan de manera adecuada para maximizar sus beneficios y minimizar riesgos. A continuación, […]

Cómo Tomar Tabletas de Parabolan: Guía Práctica Read More »

Exceptional_artistry_and_spinline_techniques_for_modern_embroidery_projects

Exceptional artistry and spinline techniques for modern embroidery projects Understanding the Core Principles of Spinline Embroidery Materials and Tools for Spinline Success Exploring Different Stitch Techniques for Spinline Applying Variations to Traditional Stitches Choosing the Right Fabric for Spinline Projects Considering Fabric Weight and Weave Incorporating Color and Texture in Spinline Designs Elevating Spinline Embroidery

Exceptional_artistry_and_spinline_techniques_for_modern_embroidery_projects Read More »

Especialista_en_apuestas_descubre_solcasino_y_sus_ventajas_exclusivas_ahora

Especialista en apuestas descubre solcasino y sus ventajas exclusivas ahora La Plataforma de Solcasino: Una Visión General Bonificaciones y Promociones en Solcasino Variedad de Juegos Disponibles Proveedores de Software en Solcasino Opciones de Pago y Atención al Cliente Proceso de Retiro de Fondos Consideraciones Finales sobre Solcasino 🔥 Juega ▶️ Especialista en apuestas descubre solcasino

Especialista_en_apuestas_descubre_solcasino_y_sus_ventajas_exclusivas_ahora Read More »

Increíbles_oportunidades_dentro_de_sol_casino_login_para_jugadores_avanzados_ho

Increíbles oportunidades dentro de sol casino login para jugadores avanzados hoy La Amplia Gama de Juegos Disponibles Explorando las Máquinas Tragamonedas Bonificaciones y Promociones Atractivas Programas de Fidelidad y Recompensas VIP Métodos de Pago Seguros y Convenientes Retiros Rápidos y Sin Complicaciones Atención al Cliente Excepcional Consideraciones Importantes para una Experiencia Óptima 🔥 Juega ▶️

Increíbles_oportunidades_dentro_de_sol_casino_login_para_jugadores_avanzados_ho Read More »

Rozrywka_z_bonusem_i_luckysheriff_kod_promocyjny_dla_nowych_graczy_w_kasynie_onl

Rozrywka z bonusem i luckysheriff kod promocyjny dla nowych graczy w kasynie online Zrozumienie Kodów Promocyjnych w Kasynach Online Jak Znaleźć Aktualne Kody Promocyjne? Luckysheriff: Szczegółowy Przegląd Oferty Kasyna Metody Płatności i Obsługa Klienta w Luckysheriff Wykorzystanie Luckysheriff Kod Promocyjny – Jak to Zrobić? Typowe Błędy Przy Wykorzystywaniu Kodów Promocyjnych Strategie Maksymalizacji Korzyści z Bonusów

Rozrywka_z_bonusem_i_luckysheriff_kod_promocyjny_dla_nowych_graczy_w_kasynie_onl Read More »

L’entreprise publie souvent avec type de baccalaureats que bourdonnent parmi parieurs du reseau integral

Octroyer mon outil vers thunes abdiquant tous les taux des credits bienveillant ou leurs options pourboire attractives pourra beaucoup ameliorer votre savoir connaissances de gaming sauf que tous les comptabilites virtuels. Les liberalite ou nos euphemismes detonateurs pullulent vos prospectives a l�egard de diplomaties abondance pour des options tel vos fonctionnalites multiplicatrices. Pour finir, il

L’entreprise publie souvent avec type de baccalaureats que bourdonnent parmi parieurs du reseau integral Read More »

Persistent_connections_around_uspin_me_foster_lasting_community_engagement

Persistent connections around uspin me foster lasting community engagement Building Bridges: The Power of Shared Interests The Role of Niche Communities Cultivating Active Participation: Beyond Simple Connections The Importance of Moderation and Community Guidelines Leveraging Technology to Enhance Community Interactions The Role of AI and Machine Learning The Long-Term Value of Persistent Connections Beyond Interaction:

Persistent_connections_around_uspin_me_foster_lasting_community_engagement 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