/** * Theme functions and definitions * * @package HelloElementor */ if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. } define( 'HELLO_ELEMENTOR_VERSION', '3.4.4' ); define( 'EHP_THEME_SLUG', 'hello-elementor' ); define( 'HELLO_THEME_PATH', get_template_directory() ); define( 'HELLO_THEME_URL', get_template_directory_uri() ); define( 'HELLO_THEME_ASSETS_PATH', HELLO_THEME_PATH . '/assets/' ); define( 'HELLO_THEME_ASSETS_URL', HELLO_THEME_URL . '/assets/' ); define( 'HELLO_THEME_SCRIPTS_PATH', HELLO_THEME_ASSETS_PATH . 'js/' ); define( 'HELLO_THEME_SCRIPTS_URL', HELLO_THEME_ASSETS_URL . 'js/' ); define( 'HELLO_THEME_STYLE_PATH', HELLO_THEME_ASSETS_PATH . 'css/' ); define( 'HELLO_THEME_STYLE_URL', HELLO_THEME_ASSETS_URL . 'css/' ); define( 'HELLO_THEME_IMAGES_PATH', HELLO_THEME_ASSETS_PATH . 'images/' ); define( 'HELLO_THEME_IMAGES_URL', HELLO_THEME_ASSETS_URL . 'images/' ); if ( ! isset( $content_width ) ) { $content_width = 800; // Pixels. } if ( ! function_exists( 'hello_elementor_setup' ) ) { /** * Set up theme support. * * @return void */ function hello_elementor_setup() { if ( is_admin() ) { hello_maybe_update_theme_version_in_db(); } if ( apply_filters( 'hello_elementor_register_menus', true ) ) { register_nav_menus( [ 'menu-1' => esc_html__( 'Header', 'hello-elementor' ) ] ); register_nav_menus( [ 'menu-2' => esc_html__( 'Footer', 'hello-elementor' ) ] ); } if ( apply_filters( 'hello_elementor_post_type_support', true ) ) { add_post_type_support( 'page', 'excerpt' ); } if ( apply_filters( 'hello_elementor_add_theme_support', true ) ) { add_theme_support( 'post-thumbnails' ); add_theme_support( 'automatic-feed-links' ); add_theme_support( 'title-tag' ); add_theme_support( 'html5', [ 'search-form', 'comment-form', 'comment-list', 'gallery', 'caption', 'script', 'style', 'navigation-widgets', ] ); add_theme_support( 'custom-logo', [ 'height' => 100, 'width' => 350, 'flex-height' => true, 'flex-width' => true, ] ); add_theme_support( 'align-wide' ); add_theme_support( 'responsive-embeds' ); /* * Editor Styles */ add_theme_support( 'editor-styles' ); add_editor_style( 'editor-styles.css' ); /* * WooCommerce. */ if ( apply_filters( 'hello_elementor_add_woocommerce_support', true ) ) { // WooCommerce in general. add_theme_support( 'woocommerce' ); // Enabling WooCommerce product gallery features (are off by default since WC 3.0.0). // zoom. add_theme_support( 'wc-product-gallery-zoom' ); // lightbox. add_theme_support( 'wc-product-gallery-lightbox' ); // swipe. add_theme_support( 'wc-product-gallery-slider' ); } } } } add_action( 'after_setup_theme', 'hello_elementor_setup' ); function hello_maybe_update_theme_version_in_db() { $theme_version_option_name = 'hello_theme_version'; // The theme version saved in the database. $hello_theme_db_version = get_option( $theme_version_option_name ); // If the 'hello_theme_version' option does not exist in the DB, or the version needs to be updated, do the update. if ( ! $hello_theme_db_version || version_compare( $hello_theme_db_version, HELLO_ELEMENTOR_VERSION, '<' ) ) { update_option( $theme_version_option_name, HELLO_ELEMENTOR_VERSION ); } } if ( ! function_exists( 'hello_elementor_display_header_footer' ) ) { /** * Check whether to display header footer. * * @return bool */ function hello_elementor_display_header_footer() { $hello_elementor_header_footer = true; return apply_filters( 'hello_elementor_header_footer', $hello_elementor_header_footer ); } } if ( ! function_exists( 'hello_elementor_scripts_styles' ) ) { /** * Theme Scripts & Styles. * * @return void */ function hello_elementor_scripts_styles() { if ( apply_filters( 'hello_elementor_enqueue_style', true ) ) { wp_enqueue_style( 'hello-elementor', HELLO_THEME_STYLE_URL . 'reset.css', [], HELLO_ELEMENTOR_VERSION ); } if ( apply_filters( 'hello_elementor_enqueue_theme_style', true ) ) { wp_enqueue_style( 'hello-elementor-theme-style', HELLO_THEME_STYLE_URL . 'theme.css', [], HELLO_ELEMENTOR_VERSION ); } if ( hello_elementor_display_header_footer() ) { wp_enqueue_style( 'hello-elementor-header-footer', HELLO_THEME_STYLE_URL . 'header-footer.css', [], HELLO_ELEMENTOR_VERSION ); } } } add_action( 'wp_enqueue_scripts', 'hello_elementor_scripts_styles' ); if ( ! function_exists( 'hello_elementor_register_elementor_locations' ) ) { /** * Register Elementor Locations. * * @param ElementorPro\Modules\ThemeBuilder\Classes\Locations_Manager $elementor_theme_manager theme manager. * * @return void */ function hello_elementor_register_elementor_locations( $elementor_theme_manager ) { if ( apply_filters( 'hello_elementor_register_elementor_locations', true ) ) { $elementor_theme_manager->register_all_core_location(); } } } add_action( 'elementor/theme/register_locations', 'hello_elementor_register_elementor_locations' ); if ( ! function_exists( 'hello_elementor_content_width' ) ) { /** * Set default content width. * * @return void */ function hello_elementor_content_width() { $GLOBALS['content_width'] = apply_filters( 'hello_elementor_content_width', 800 ); } } add_action( 'after_setup_theme', 'hello_elementor_content_width', 0 ); if ( ! function_exists( 'hello_elementor_add_description_meta_tag' ) ) { /** * Add description meta tag with excerpt text. * * @return void */ function hello_elementor_add_description_meta_tag() { if ( ! apply_filters( 'hello_elementor_description_meta_tag', true ) ) { return; } if ( ! is_singular() ) { return; } $post = get_queried_object(); if ( empty( $post->post_excerpt ) ) { return; } echo '' . "\n"; } } add_action( 'wp_head', 'hello_elementor_add_description_meta_tag' ); // Settings page require get_template_directory() . '/includes/settings-functions.php'; // Header & footer styling option, inside Elementor require get_template_directory() . '/includes/elementor-functions.php'; if ( ! function_exists( 'hello_elementor_customizer' ) ) { // Customizer controls function hello_elementor_customizer() { if ( ! is_customize_preview() ) { return; } if ( ! hello_elementor_display_header_footer() ) { return; } require get_template_directory() . '/includes/customizer-functions.php'; } } add_action( 'init', 'hello_elementor_customizer' ); if ( ! function_exists( 'hello_elementor_check_hide_title' ) ) { /** * Check whether to display the page title. * * @param bool $val default value. * * @return bool */ function hello_elementor_check_hide_title( $val ) { if ( defined( 'ELEMENTOR_VERSION' ) ) { $current_doc = Elementor\Plugin::instance()->documents->get( get_the_ID() ); if ( $current_doc && 'yes' === $current_doc->get_settings( 'hide_title' ) ) { $val = false; } } return $val; } } add_filter( 'hello_elementor_page_title', 'hello_elementor_check_hide_title' ); /** * BC: * In v2.7.0 the theme removed the `hello_elementor_body_open()` from `header.php` replacing it with `wp_body_open()`. * The following code prevents fatal errors in child themes that still use this function. */ if ( ! function_exists( 'hello_elementor_body_open' ) ) { function hello_elementor_body_open() { wp_body_open(); } } require HELLO_THEME_PATH . '/theme.php'; HelloTheme\Theme::instance(); blog Archives - Yayasan Lentera Jagad Nusantara Sejahtera

Базы обращения с данными и архивами

Базы обращения с данными и архивами Обращение с файлами и сжатыми файлами выступает базовой областью работы со электронными платформами. Документы используются ради сохранения сведений, а архивные контейнеры помогают соединять ряд документов в один контейнер, снижать их размер и облегчать передачу. Освоение риобет структуры файлов а также основ архивирования дает возможность упорядочить сведения, повысить доступ к […]

Что означают цифровые-платформы

Что означают цифровые-платформы Цифровые-платформы являют собой цифровые системы, они связывают участников, данные и рабочие механизмы во общей инфраструктуре. Такие платформы используются с-целью обеспечения коммуникации среди сторонами, анализа данных плюс запуска различных процессов через сеть. Платформа может объединять экран с-целью взаимодействия, серверную часть а-также интеграции между сторонними системами. Во отличие 1win с стандартных ресурсов, цифровые-платформы содержат […]

Jordan Limited Collection Last Few Left

Jordan Air Shoes Gift Guide: Selecting the Right Pair for Him Shopping for Air Jordans as a gift looks simple until you’re staring at many silhouettes, innumerable colorways, and a price window from $110 to more than $250 at retail. Kicks are highly individual, and selecting the incorrect pair can lead to an uncomfortable return […]

Каким образом действуют резервные версии

Каким образом действуют резервные версии Запасные копии являют собой зафиксированные дубликаты информации, которые используются для возврата данных по окончании нарушения, исключения, повреждения файла а также программной ошибки. Подобная копия способна охватывать документы, фотографии, параметры программ, базы сведений, технические объекты, архивы задач и другие материалы, важные для стабильной функционирования системы либо сервиса. Главная цель резервного дублирования […]

Как работают финансовые системы через интернете

Как работают финансовые системы через интернете Платежные платформы через онлайне обеспечивают перевод денежных денег среди участниками, сервисами плюс банковскими структурами. Данные-механизмы связывают технологии передачи сведений, банковскую основу плюс софтовые инструменты ради выполнения платежей. Любая онлайн-оплата осуществляется через набор стадий, охватывая передачу реквизитов, контроль, подтверждение плюс подтверждение платежа. Для человека подобный 7К казино сценарий воспринимается в-качестве […]

Как действуют маркетплейсы

Как действуют маркетплейсы Торговые-площадки образуют по-сути электронные системы, они соединяют поставщиков и пользователей внутри цельной среде ради оформления покупок. В разницу от традиционных цифровых-магазинов, такие платформы не ограничиваются одним продавцом, но дают основу с-целью размещения товаров от различных участников. Это позволяет создавать большой ассортимент, администрировать предложениями плюс поддерживать единую выполнение заявок. Покупатель 7К казино наблюдает […]

Casino on-line overview: games, transactions, and player journey

Casino on-line overview: games, transactions, and player journey Virtual wagering venues have changed gaming options for millions of players internationally. Current casino on-line sites integrate sophisticated software, protected transaction systems, and varied game collections under integrated interfaces. Members obtain hundreds of games without exiting their residences. The cornerstone of any reputable operator rests on three […]

Как работают куки

Как работают куки Cookie выступают собой маленькие файлы, которые записываются внутри браузере во время открытии веб-ресурсов. Данные данные хранят сведения о контакте с ресурсом и позволяют системе определять повторяющиеся запросы. Благодаря cookie платформы способны фиксировать опции, обеспечивать сеансы а также поддерживать правильную работу различных возможностей. Даже при на небольшой объем, подобные данные имеют важную задачу […]

Casino on-line handbook: offerings, payments, and player experience

Casino on-line handbook: offerings, payments, and player experience Online gaming operators have changed leisure options for millions of players internationally. Contemporary casino on-line platforms combine advanced software, protected transaction systems, and diverse game collections under unified designs. Players access hundreds of options without exiting their homes. The foundation of any reputable operator rests on three […]

Online Casino: Guide to Signup, Slots, and Secure Gaming

Online Casino: Guide to Signup, Slots, and Secure Gaming Online casino operators supply entertainment through electronic slot devices, card games, and live dealer tables. Gamblers utilize these offerings through web browsers or dedicated applications. Understanding signup processes, game operations, and protection steps enables players make educated choices. Current operators utilize encryption standards to protect financial […]