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

Perché le decisioni quotidiane sono come attraversare la strada con una gallina

Introduzione: Le decisioni quotidiane come un percorso a ostacoli Ogni giorno siamo chiamati a fare scelte che, a prima vista, sembrano semplici: cosa indossare, cosa mangiare, come affrontare una riunione o un imprevisto. Tuttavia, dietro queste decisioni si nascondono processi complessi che influenzano la nostra vita, spesso senza che ce ne rendiamo conto. La similitudine […]

Perché le decisioni quotidiane sono come attraversare la strada con una gallina Read More »

Calibrare il rapporto resina/indurente epossidica con precisione di livello esperto per massimizzare la resistenza meccanica in applicazioni industriali italiane

Il rapporto esatto tra resina epossidica e indurente non è semplice bilanciamento numerico, ma il fulcro critico che determina la qualità finale del laminato, soprattutto in settori come automotive, meccanico industriale e infrastrutture in Italia dove affidabilità e durabilità sono imprescindibili. A differenza di miscele generiche, il valore ottimale dipende da uno studio preciso della

Calibrare il rapporto resina/indurente epossidica con precisione di livello esperto per massimizzare la resistenza meccanica in applicazioni industriali italiane Read More »

Come Nintendo ha rivoluzionato l’attraversamento stradale nei videogiochi

L’attraversamento stradale è uno dei momenti più delicati e cruciali sia nella vita quotidiana che nel mondo dei videogiochi. La sua rappresentazione nel medium videoludico ha attraversato un lungo processo di evoluzione, riflettendo non solo avanzamenti tecnici ma anche un crescente senso di responsabilità educativa. In Italia, dove la sicurezza stradale è una priorità, questa

Come Nintendo ha rivoluzionato l’attraversamento stradale nei videogiochi Read More »

Impostare con precisione il filtro geolocalizzato Tier 2 per un’AR linguistica italiana standardizzata nelle microzone bianitate

La georeferenziazione centimetrica integrata in applicazioni di realtà aumentata (AR) rappresenta una frontiera avanzata per la fruizione contestualizzata di contenuti linguistici regionali, in particolare quando si richiede la filtrazione rigorosa di output in italiano standardizzato. Il Tier 2, nel contesto delle microzone bianitate, non si limita alla semplice localizzazione geografica, ma richiede una sinergia tra

Impostare con precisione il filtro geolocalizzato Tier 2 per un’AR linguistica italiana standardizzata nelle microzone bianitate Read More »

Gaussian Elimination: The Art and Science of Simplifying Complexity

Gaussian elimination stands as a cornerstone technique in linear algebra, transforming intricate matrix systems into solvable forms through systematic row operations. At its core, this method reduces complexity not by erasing structure, but by revealing hidden patterns—much like taming a chaotic lawn into ordered growth. This approach mirrors real-world systems where disorder gives way to

Gaussian Elimination: The Art and Science of Simplifying Complexity Read More »

The Importance of User Reviews in Selecting an Online Casino

Choosing the right online casino can significantly impact your gaming experience, safety, and potential winnings. User reviews serve as an invaluable resource in this decision-making process, providing authentic insights from players who have firsthand experience. Understanding how to interpret these reviews and leverage them effectively can help you make informed choices, ensuring a safer and

The Importance of User Reviews in Selecting an Online Casino Read More »

Procedure dettagliate per prelevare fondi con carte di casinò online in sicurezza

Indice Perché scegliere le carte come metodo di prelievo nei casinò online Come selezionare la carta più adatta per i prelievi dal casinò online Preparare la carta e il conto prima di richiedere un prelievo Passaggi pratici per effettuare un prelievo in modo sicuro Misure di sicurezza avanzate durante i prelievi su carta Gestire eventuali

Procedure dettagliate per prelevare fondi con carte di casinò online in sicurezza

Read More »

Goldenbet Contact Details regarding Account Verification plus Security Assistance

Ensuring the safety of the Goldenbet account is usually more crucial than ever, especially as on the web betting platforms become increasingly targeted by means of fraudsters. With market data showing the fact that 40% of bank account breaches originate through compromised contact particulars, understanding how in order to verify your identity and protect your

Goldenbet Contact Details regarding Account Verification plus Security Assistance 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