qsdklsqkdmqskdmlqskd azoepqikdomlqskdjmlqs qpfklqjsfmklqsjdmqlsjdsqd icon-functions.php000066600000007415152331230430010222 0ustar00theme_location ) { $svg = twentynineteen_get_social_link_svg( $item->url, 32 ); if ( empty( $svg ) ) { $svg = twentynineteen_get_icon_svg( 'link' ); } $item_output = str_replace( $args->link_after, '' . $svg, $item_output ); } return $item_output; } add_filter( 'walker_nav_menu_start_el', 'twentynineteen_nav_menu_social_icons', 10, 4 ); /** * Adds a dropdown icon to top-level menu items. * * @param string $item_output The menu item's starting HTML output. * @param WP_Post $item Menu item data object. * @param int $depth Depth of the menu. Used for padding. * @param stdClass $args An object of wp_nav_menu() arguments. * @return string Nav menu item start element. */ function twentynineteen_add_dropdown_icons( $item_output, $item, $depth, $args ) { // Only add class to 'top level' items on the 'primary' menu. if ( ! isset( $args->theme_location ) || 'menu-1' !== $args->theme_location ) { return $item_output; } if ( in_array( 'mobile-parent-nav-menu-item', $item->classes, true ) && isset( $item->original_id ) ) { // Inject the keyboard_arrow_left SVG inside the parent nav menu item, and let the item link to the parent item. // @todo Only do this for nested submenus? If on a first-level submenu, then really the link could be "#" since the desire is to remove the target entirely. $link = sprintf( '. $item_output = preg_replace( '##i', '', $item_output, 1 // Limit. ); } elseif ( in_array( 'menu-item-has-children', $item->classes, true ) ) { // Add SVG icon to parent items. $icon = twentynineteen_get_icon_svg( 'keyboard_arrow_down', 24 ); $item_output .= sprintf( '', $icon ); } return $item_output; } add_filter( 'walker_nav_menu_start_el', 'twentynineteen_add_dropdown_icons', 10, 4 ); back-compat.php000066600000004707152331230430007446 0ustar00

%s

', sprintf( /* translators: %s: WordPress version. */ __( 'Twenty Nineteen requires at least WordPress version 4.7. You are running version %s. Please upgrade and try again.', 'twentynineteen' ), $GLOBALS['wp_version'] ) ); } /** * Prevents the Customizer from being loaded on WordPress versions prior to 4.7. * * @since Twenty Nineteen 1.0.0 * * @global string $wp_version WordPress version. */ function twentynineteen_customize() { wp_die( sprintf( /* translators: %s: WordPress version. */ __( 'Twenty Nineteen requires at least WordPress version 4.7. You are running version %s. Please upgrade and try again.', 'twentynineteen' ), $GLOBALS['wp_version'] ), '', array( 'back_link' => true, ) ); } add_action( 'load-customize.php', 'twentynineteen_customize' ); /** * Prevents the Theme Preview from being loaded on WordPress versions prior to 4.7. * * @since Twenty Nineteen 1.0.0 * * @global string $wp_version WordPress version. */ function twentynineteen_preview() { if ( isset( $_GET['preview'] ) ) { wp_die( sprintf( /* translators: %s: WordPress version. */ __( 'Twenty Nineteen requires at least WordPress version 4.7. You are running version %s. Please upgrade and try again.', 'twentynineteen' ), $GLOBALS['wp_version'] ) ); } } add_action( 'template_redirect', 'twentynineteen_preview' ); helper-functions.php000066600000010136152331230430010543 0ustar00user_id > 0 ) { $user = get_userdata( $comment->user_id ); $post = get_post( $comment->comment_post_ID ); if ( ! empty( $user ) && ! empty( $post ) ) { return $comment->user_id === $post->post_author; } } return false; } /** * Returns information about the current post's discussion, with cache support. */ function twentynineteen_get_discussion_data() { static $discussion, $post_id; $current_post_id = get_the_ID(); if ( $current_post_id === $post_id ) { return $discussion; /* If we have discussion information for post ID, return cached object */ } else { $post_id = $current_post_id; } $comments = get_comments( array( 'post_id' => $current_post_id, 'orderby' => 'comment_date_gmt', 'order' => get_option( 'comment_order', 'asc' ), /* Respect comment order from Settings » Discussion. */ 'status' => 'approve', 'number' => 20, /* Only retrieve the last 20 comments, as the end goal is just 6 unique authors */ ) ); $authors = array(); foreach ( $comments as $comment ) { $authors[] = ( (int) $comment->user_id > 0 ) ? (int) $comment->user_id : $comment->comment_author_email; } $authors = array_unique( $authors ); $discussion = (object) array( 'authors' => array_slice( $authors, 0, 6 ), /* Six unique authors commenting on the post. */ 'responses' => get_comments_number( $current_post_id ), /* Number of responses. */ ); return $discussion; } /** * Converts HSL to HEX or RGB colors. * * @param float $h The hue component (0-360). * @param float $s The saturation component (0-100). * @param float $l The lightness component (0-100). * @param bool $to_hex Whether to convert to HEX format (true) or RGB (false). Default true. */ function twentynineteen_hsl_hex( $h, $s, $l, $to_hex = true ) { $h /= 360; $s /= 100; $l /= 100; $r = $l; $g = $l; $b = $l; $v = ( $l <= 0.5 ) ? ( $l * ( 1.0 + $s ) ) : ( $l + $s - $l * $s ); if ( $v > 0 ) { $m = $l + $l - $v; $sv = ( $v - $m ) / $v; $h *= 6.0; $sextant = floor( $h ); $fract = $h - $sextant; $vsf = $v * $sv * $fract; $mid1 = $m + $vsf; $mid2 = $v - $vsf; switch ( $sextant ) { case 0: $r = $v; $g = $mid1; $b = $m; break; case 1: $r = $mid2; $g = $v; $b = $m; break; case 2: $r = $m; $g = $v; $b = $mid1; break; case 3: $r = $m; $g = $mid2; $b = $v; break; case 4: $r = $mid1; $g = $m; $b = $v; break; case 5: $r = $v; $g = $m; $b = $mid2; break; } } $r = round( $r * 255, 0 ); $g = round( $g * 255, 0 ); $b = round( $b * 255, 0 ); if ( $to_hex ) { $r = ( $r < 15 ) ? '0' . dechex( $r ) : dechex( $r ); $g = ( $g < 15 ) ? '0' . dechex( $g ) : dechex( $g ); $b = ( $b < 15 ) ? '0' . dechex( $b ) : dechex( $b ); return "#$r$g$b"; } return "rgb($r, $g, $b)"; } template-functions.php000066600000021253152331230430011101 0ustar00'; } } add_action( 'wp_head', 'twentynineteen_pingback_header' ); /** * Changes comment form default fields. * * @param array $defaults The default comment form arguments. */ function twentynineteen_comment_form_defaults( $defaults ) { $comment_field = $defaults['comment_field']; // Adjust height of comment form. $defaults['comment_field'] = preg_replace( '/rows="\d+"/', 'rows="5"', $comment_field ); return $defaults; } add_filter( 'comment_form_defaults', 'twentynineteen_comment_form_defaults' ); /** * Filters the default archive titles. */ function twentynineteen_get_the_archive_title() { if ( is_category() ) { $title = __( 'Category Archives: ', 'twentynineteen' ) . '' . single_term_title( '', false ) . ''; } elseif ( is_tag() ) { $title = __( 'Tag Archives: ', 'twentynineteen' ) . '' . single_term_title( '', false ) . ''; } elseif ( is_author() ) { $title = __( 'Author Archives: ', 'twentynineteen' ) . '' . get_the_author_meta( 'display_name' ) . ''; } elseif ( is_year() ) { $title = __( 'Yearly Archives: ', 'twentynineteen' ) . '' . get_the_date( _x( 'Y', 'yearly archives date format', 'twentynineteen' ) ) . ''; } elseif ( is_month() ) { $title = __( 'Monthly Archives: ', 'twentynineteen' ) . '' . get_the_date( _x( 'F Y', 'monthly archives date format', 'twentynineteen' ) ) . ''; } elseif ( is_day() ) { $title = __( 'Daily Archives: ', 'twentynineteen' ) . '' . get_the_date() . ''; } elseif ( is_post_type_archive() ) { $title = __( 'Post Type Archives: ', 'twentynineteen' ) . '' . post_type_archive_title( '', false ) . ''; } elseif ( is_tax() ) { $tax = get_taxonomy( get_queried_object()->taxonomy ); /* translators: %s: Taxonomy singular name. */ $title = sprintf( esc_html__( '%s Archives:', 'twentynineteen' ), $tax->labels->singular_name ); } else { $title = __( 'Archives:', 'twentynineteen' ); } return $title; } add_filter( 'get_the_archive_title', 'twentynineteen_get_the_archive_title' ); /** * Adds custom 'sizes' attribute to responsive image functionality for post thumbnails. * * @since Twenty Nineteen 1.0 * * @param string[] $attr Array of attribute values for the image markup, keyed by attribute name. * See wp_get_attachment_image(). * @return string[] The filtered attributes for the image markup. */ function twentynineteen_post_thumbnail_sizes_attr( $attr ) { if ( is_admin() ) { return $attr; } if ( ! is_singular() ) { $attr['sizes'] = '(max-width: 34.9rem) calc(100vw - 2rem), (max-width: 53rem) calc(8 * (100vw / 12)), (min-width: 53rem) calc(6 * (100vw / 12)), 100vw'; } return $attr; } add_filter( 'wp_get_attachment_image_attributes', 'twentynineteen_post_thumbnail_sizes_attr' ); /** * Adds an extra menu to our nav for our priority+ navigation to use. * * @param string $nav_menu Nav menu. * @param object $args Nav menu args. * @return string More link for hidden menu items. */ function twentynineteen_add_ellipses_to_nav( $nav_menu, $args ) { if ( 'menu-1' === $args->theme_location ) : $nav_menu .= ' '; endif; return $nav_menu; } add_filter( 'wp_nav_menu', 'twentynineteen_add_ellipses_to_nav', 10, 2 ); /** * Handles WCAG 2.0 attributes for dropdown menus. * * Adjustments to menu attributes to support WCAG 2.0 recommendations * for flyout and dropdown menus. * * @link https://www.w3.org/WAI/tutorials/menus/flyout/ * * @param array $atts { * The HTML attributes applied to the menu item's `` element, empty strings are ignored. * * @type string $title Title attribute. * @type string $target Target attribute. * @type string $rel The rel attribute. * @type string $href The href attribute. * @type string $aria-current The aria-current attribute. * } * @param WP_Post $item The current menu item object. * @param stdClass $args An object of `wp_nav_menu()` arguments. * @return string[] Modified attributes. */ function twentynineteen_nav_menu_link_attributes( $atts, $item, $args ) { // Check that this is the primary menu. if ( isset( $args->theme_location ) && 'menu-1' === $args->theme_location ) { // Add [aria-haspopup] and [aria-expanded] to menu items that have children. $item_has_children = in_array( 'menu-item-has-children', $item->classes, true ); if ( $item_has_children ) { $atts['aria-haspopup'] = 'true'; $atts['aria-expanded'] = 'false'; } } return $atts; } add_filter( 'nav_menu_link_attributes', 'twentynineteen_nav_menu_link_attributes', 10, 3 ); /** * Creates a nav menu item to be displayed on mobile to navigate from submenu back to the parent. * * This duplicates each parent nav menu item and makes it the first child of itself. * * @param array $sorted_menu_items Sorted nav menu items. * @param object $args Nav menu args. * @return array Amended nav menu items. */ function twentynineteen_add_mobile_parent_nav_menu_items( $sorted_menu_items, $args ) { static $pseudo_id = 0; if ( ! isset( $args->theme_location ) || 'menu-1' !== $args->theme_location ) { return $sorted_menu_items; } $amended_menu_items = array(); foreach ( $sorted_menu_items as $nav_menu_item ) { $amended_menu_items[] = $nav_menu_item; if ( in_array( 'menu-item-has-children', $nav_menu_item->classes, true ) ) { $parent_menu_item = clone $nav_menu_item; $parent_menu_item->original_id = $nav_menu_item->ID; $parent_menu_item->ID = --$pseudo_id; $parent_menu_item->db_id = $parent_menu_item->ID; $parent_menu_item->object_id = $parent_menu_item->ID; $parent_menu_item->classes = array( 'mobile-parent-nav-menu-item' ); $parent_menu_item->menu_item_parent = $nav_menu_item->ID; $amended_menu_items[] = $parent_menu_item; } } return $amended_menu_items; } add_filter( 'wp_nav_menu_objects', 'twentynineteen_add_mobile_parent_nav_menu_items', 10, 2 ); /** * Adds a fragment identifier (to the content) to paginated links. * * @since Twenty Nineteen 2.6 * * @param string $link The page number HTML output. * @param int $i Page number for paginated posts' page links. * @return string Formatted output in HTML. */ function twentynineteen_link_pages_link( $link, $i ) { if ( $i > 1 && preg_match( '/href="([^"]*)"/', $link, $matches ) ) { $link = str_replace( $matches[1], $matches[1] . '#content', $link ); } return $link; } add_filter( 'wp_link_pages_link', 'twentynineteen_link_pages_link', 10, 2 ); color-patterns.php000066600000025400152331230430010232 0ustar00 .has-primary-background-color, .entry .entry-content > *[class^="wp-block-"].has-primary-background-color, .entry .entry-content > *[class^="wp-block-"] .has-primary-background-color, .entry .entry-content > *[class^="wp-block-"].is-style-solid-color, .entry .entry-content > *[class^="wp-block-"].is-style-solid-color.has-primary-background-color, .entry .entry-content .wp-block-file .wp-block-file__button { background-color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ } /* * Set Color for: * - all links * - main navigation links * - Post navigation links * - Post entry meta hover * - Post entry header more-link hover * - main navigation svg * - comment navigation * - Comment edit link hover * - Site Footer Link hover * - Widget links */ a, a:visited, .main-navigation .main-menu > li, .main-navigation ul.main-menu > li > a, .post-navigation .post-title, .entry .entry-meta a:hover, .entry .entry-footer a:hover, .entry .entry-content .more-link:hover, .main-navigation .main-menu > li > a + svg, .comment .comment-metadata > a:hover, .comment .comment-metadata .comment-edit-link:hover, #colophon .site-info a:hover, .widget a, .entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color), .entry .entry-content > .has-primary-color, .entry .entry-content > *[class^="wp-block-"] .has-primary-color, .entry .entry-content > *[class^="wp-block-"].is-style-solid-color blockquote.has-primary-color, .entry .entry-content > *[class^="wp-block-"].is-style-solid-color blockquote.has-primary-color p { color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ } /* * Set border color for: * wp block quote * :focus */ blockquote, .entry .entry-content blockquote, .entry .entry-content .wp-block-quote:not(.is-large), .entry .entry-content .wp-block-quote:not(.is-style-large), input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="number"]:focus, input[type="tel"]:focus, input[type="range"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="time"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="color"]:focus, textarea:focus { border-color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ } .gallery-item > div > a:focus { box-shadow: 0 0 0 2px hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ } /* Hover colors */ a:hover, a:active, .main-navigation .main-menu > li > a:hover, .main-navigation .main-menu > li > a:hover + svg, .post-navigation .nav-links a:hover, .post-navigation .nav-links a:hover .post-title, .author-bio .author-description .author-link:hover, .entry .entry-content > .has-secondary-color, .entry .entry-content > *[class^="wp-block-"] .has-secondary-color, .entry .entry-content > *[class^="wp-block-"].is-style-solid-color blockquote.has-secondary-color, .entry .entry-content > *[class^="wp-block-"].is-style-solid-color blockquote.has-secondary-color p, .comment .comment-author .fn a:hover, .comment-reply-link:hover, .comment-navigation .nav-previous a:hover, .comment-navigation .nav-next a:hover, #cancel-comment-reply-link:hover, .widget a:hover { color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness_hover . ' ); /* base: #005177; */ } .main-navigation .sub-menu > li > a:hover, .main-navigation .sub-menu > li > a:focus, .main-navigation .sub-menu > li > a:hover:after, .main-navigation .sub-menu > li > a:focus:after, .main-navigation .sub-menu > li > .menu-item-link-return:hover, .main-navigation .sub-menu > li > .menu-item-link-return:focus, .main-navigation .sub-menu > li > a:not(.submenu-expand):hover, .main-navigation .sub-menu > li > a:not(.submenu-expand):focus, .entry .entry-content > .has-secondary-background-color, .entry .entry-content > *[class^="wp-block-"].has-secondary-background-color, .entry .entry-content > *[class^="wp-block-"] .has-secondary-background-color, .entry .entry-content > *[class^="wp-block-"].is-style-solid-color.has-secondary-background-color { background-color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness_hover . ' ); /* base: #005177; */ } /* Text selection colors */ ::selection { background-color: hsl( ' . $primary_color . ', ' . $saturation_selection . ', ' . $lightness_selection . ' ); /* base: #005177; */ } ::-moz-selection { background-color: hsl( ' . $primary_color . ', ' . $saturation_selection . ', ' . $lightness_selection . ' ); /* base: #005177; */ }'; $editor_css = ' /* * Set colors for: * - links * - blockquote * - pullquote (solid color) * - buttons, including buttons in the file and search blocks. */ .editor-styles-wrapper .wp-block a, .editor-styles-wrapper .wp-block .wp-block-file .wp-block-file__textlink, /* Before 5.8 */ .editor-styles-wrapper .wp-block .wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color), /* Before 5.8 */ .editor-styles-wrapper .wp-block.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color), /* Before 5.8, the following hover style is needed to override the default color when the block is selected. */ .editor-styles-wrapper .wp-block .wp-block-button.is-style-outline:hover .wp-block-button__link:not(.has-text-color) { color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ } .editor-styles-wrapper .wp-block.wp-block-quote:not(.is-large):not(.is-style-large), .editor-styles-wrapper .wp-block .wp-block-freeform blockquote, /* Before 5.8 */ .editor-styles-wrapper .wp-block.wp-block-freeform blockquote { border-color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ } /* Pullquote: The solid color variation was removed in 5.9, the CSS is kept for backwards compatibility. */ .editor-styles-wrapper .wp-block .wp-block-pullquote.is-style-solid-color:not(.has-background-color), /* Before 5.8 */ .editor-styles-wrapper .wp-block.wp-block-pullquote.is-style-solid-color:not(.has-background-color), .editor-styles-wrapper .wp-block .wp-block-file .wp-block-file__button, /* Before 5.8, and when the block is aligned. */ .editor-styles-wrapper .wp-block.wp-block-file .wp-block-file__button, .editor-styles-wrapper .wp-block .wp-block-button:not(.is-style-outline) .wp-block-button__link, .editor-styles-wrapper .wp-block .wp-block-search .wp-block-search__button, /* Before 5.8, and when the block is aligned. */ .editor-styles-wrapper .wp-block.wp-block-search .wp-block-search__button { background-color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ } /* Link hover colors */ .editor-styles-wrapper .wp-block a:hover, .editor-styles-wrapper .wp-block a:active, .editor-styles-wrapper .wp-block.wp-block-file .wp-block-file__textlink:hover { color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness_hover . ' ); /* base: #005177; */ } /* Do not overwrite solid color pullquote or cover links */ .editor-styles-wrapper .wp-block .wp-block-pullquote.is-style-solid-color a, /* Before 5.8 */ .editor-styles-wrapper .wp-block.wp-block-pullquote.is-style-solid-color a, .editor-styles-wrapper .wp-block.wp-block-cover a { color: inherit; } '; if ( function_exists( 'register_block_type' ) && is_admin() ) { $theme_css = $editor_css; } /** * Filters Twenty Nineteen custom colors CSS. * * @since Twenty Nineteen 1.0 * * @param string $css Base theme colors CSS. * @param int $primary_color The user's selected color hue. * @param string $saturation Filtered theme color saturation level. */ return apply_filters( 'twentynineteen_custom_colors_css', $theme_css, $primary_color, $saturation ); } block-patterns.php000066600000030574152331230430010216 0ustar00 esc_html__( 'Twenty Nineteen', 'twentynineteen' ) ) ); } /** * Register Block Patterns. */ if ( function_exists( 'register_block_pattern' ) ) { // About. register_block_pattern( 'twentynineteen/about', array( 'title' => esc_html__( 'About', 'twentynineteen' ), 'categories' => array( 'twentynineteen' ), 'content' => implode( '', array( '', '

' . esc_html__( 'Advocating for Businesses and Entrepreneurs since 2014', 'twentynineteen' ) . '

', '', '', '

' . esc_html__( 'Eva Young Consulting was founded in 2014 to meet the needs of small businesses in the San Francisco Bay Area. We help startups define a clear brand identity and digital strategy that will carry them through their financing rounds and scale as their business grows. Discover how we can boost your brand with a unique and powerful digital marketing strategy.', 'twentynineteen' ) . '

', '', '', '
', '
' . esc_html__( 'Learn More', 'twentynineteen' ) . '
', '
', '', ) ), ) ); // Get In Touch. register_block_pattern( 'twentynineteen/get-in-touch', array( 'title' => esc_html__( 'Get In Touch', 'twentynineteen' ), 'categories' => array( 'twentynineteen' ), 'content' => implode( '', array( '', '

' . esc_html__( 'Get In Touch', 'twentynineteen' ) . '

', '', '', '
', '
', '

' . esc_html__( '20 Cooper Avenue', 'twentynineteen' ) . '
' . esc_html__( 'New York, New York 10023', 'twentynineteen' ) . '

', '
', '', '', '
', '

' . esc_html__( '(555) 555-5555', 'twentynineteen' ) . '
' . esc_html__( 'example@example.com', 'twentynineteen' ) . '

', '
', '
', '', '', '
', '
' . esc_html__( 'Contact Us', 'twentynineteen' ) . '
', '
', '', ) ), ) ); // Services. register_block_pattern( 'twentynineteen/services', array( 'title' => esc_html__( 'Services', 'twentynineteen' ), 'categories' => array( 'twentynineteen' ), 'content' => implode( '', array( '', '

' . esc_html__( 'Services', 'twentynineteen' ) . '

', '', '', '
', '
', '
' . esc_attr__( 'Gradient', 'twentynineteen' ) . '
', '

' . esc_html__( 'Website Design', 'twentynineteen' ) . '

', '
', '', '', '
' . esc_attr__( 'Gradient', 'twentynineteen' ) . '
', '

' . esc_html__( 'Mobile', 'twentynineteen' ) . '

', '
', '', '', '
' . esc_attr__( 'Gradient', 'twentynineteen' ) . '
', '

' . esc_html__( 'Social Media', 'twentynineteen' ) . '

', '
', '
', '', '', '
', '
' . esc_attr__( 'Gradient', 'twentynineteen' ) . '
', '

' . esc_html__( 'Marketing', 'twentynineteen' ) . '

', '
', '', '', '
' . esc_attr__( 'Gradient', 'twentynineteen' ) . '
', '

' . esc_html__( 'Copywriting', 'twentynineteen' ) . '

', '
', '', '', '
' . esc_attr__( 'Gradient', 'twentynineteen' ) . '
', '

' . esc_html__( 'Content Strategy', 'twentynineteen' ) . '

', '
', '
', '
', '', ) ), ) ); // Team. register_block_pattern( 'twentynineteen/team', array( 'title' => esc_html__( 'Team', 'twentynineteen' ), 'categories' => array( 'twentynineteen' ), 'viewportWidth' => 1400, 'content' => implode( '', array( '', '

' . esc_html__( 'Team', 'twentynineteen' ) . '

', '', '', '
' . esc_attr__( 'Gradient', 'twentynineteen' ) . '
', '

' . esc_html__( 'Eva Young', 'twentynineteen' ) . '

', '', '', '

' . esc_html__( 'Eva Young grew up working alongside her parents at their restaurant in Queens, NY. She opened Eva Young Consulting in 2014 to help small businesses like her parents’ restaurant adapt to the digital age.', 'twentynineteen' ) . '

', '
', '', '', '
' . esc_attr__( 'Gradient', 'twentynineteen' ) . '
', '

' . esc_html__( 'Doug Watson', 'twentynineteen' ) . '

', '', '', '

' . esc_html__( 'Oddly enough, Doug Watson also grew up working alongside his parents at a family-owned restaurant in Queens, NY. He  worked on digital campaigns for Fortune 500 Companies before joining Eva Green Consulting.', 'twentynineteen' ) . '

', '
', '', ) ), ) ); // What We Do. register_block_pattern( 'twentynineteen/what-we-do', array( 'title' => esc_html__( 'What We Do', 'twentynineteen' ), 'categories' => array( 'twentynineteen' ), 'viewportWidth' => 1400, 'content' => implode( '', array( '', '

' . esc_html__( 'What We Do', 'twentynineteen' ) . '

', '', '', '

' . esc_html__( 'Redefine brands', 'twentynineteen' ) . '

' . esc_html__( 'We help startups define (or refine) a clear brand identity.', 'twentynineteen' ) . '
', '', '', '

' . esc_html__( 'Activate new customers', 'twentynineteen' ) . '

' . esc_html__( 'We help businesses grow.', 'twentynineteen' ) . '
', '', '', '

' . esc_html__( 'Spark interest on social media', 'twentynineteen' ) . '

' . esc_html__( 'We help companies communicate with their customers.', 'twentynineteen' ) . '
', '', ) ), ) ); } customizer.php000066600000010106152331230430007457 0ustar00get_setting( 'blogname' )->transport = 'postMessage'; $wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage'; $wp_customize->get_setting( 'header_textcolor' )->transport = 'postMessage'; if ( isset( $wp_customize->selective_refresh ) ) { $wp_customize->selective_refresh->add_partial( 'blogname', array( 'selector' => '.site-title a', 'render_callback' => 'twentynineteen_customize_partial_blogname', ) ); $wp_customize->selective_refresh->add_partial( 'blogdescription', array( 'selector' => '.site-description', 'render_callback' => 'twentynineteen_customize_partial_blogdescription', ) ); } /** * Primary color. */ $wp_customize->add_setting( 'primary_color', array( 'default' => 'default', 'transport' => 'postMessage', 'sanitize_callback' => 'twentynineteen_sanitize_color_option', ) ); $wp_customize->add_control( 'primary_color', array( 'type' => 'radio', 'label' => __( 'Primary Color', 'twentynineteen' ), 'choices' => array( 'default' => _x( 'Default', 'primary color', 'twentynineteen' ), 'custom' => _x( 'Custom', 'primary color', 'twentynineteen' ), ), 'section' => 'colors', 'priority' => 5, ) ); // Add primary color hue setting and control. $wp_customize->add_setting( 'primary_color_hue', array( 'default' => 199, 'transport' => 'postMessage', 'sanitize_callback' => 'absint', ) ); $wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'primary_color_hue', array( 'label' => __( 'Custom Color', 'twentynineteen' ), 'description' => __( 'Apply a custom color for buttons, links, featured images, etc.', 'twentynineteen' ), 'section' => 'colors', 'mode' => 'hue', ) ) ); // Add image filter setting and control. $wp_customize->add_setting( 'image_filter', array( 'default' => 1, 'sanitize_callback' => 'absint', 'transport' => 'postMessage', ) ); $wp_customize->add_control( 'image_filter', array( 'label' => __( 'Apply a filter to featured images using the primary color', 'twentynineteen' ), 'section' => 'colors', 'type' => 'checkbox', ) ); } add_action( 'customize_register', 'twentynineteen_customize_register' ); /** * Renders the site title for the selective refresh partial. * * @return void */ function twentynineteen_customize_partial_blogname() { bloginfo( 'name' ); } /** * Renders the site tagline for the selective refresh partial. * * @return void */ function twentynineteen_customize_partial_blogdescription() { bloginfo( 'description' ); } /** * Binds JS handlers to instantly live-preview changes. */ function twentynineteen_customize_preview_js() { wp_enqueue_script( 'twentynineteen-customize-preview', get_theme_file_uri( '/js/customize-preview.js' ), array( 'customize-preview' ), '20181214', array( 'in_footer' => true ) ); } add_action( 'customize_preview_init', 'twentynineteen_customize_preview_js' ); /** * Loads dynamic logic for the customizer controls area. */ function twentynineteen_panels_js() { wp_enqueue_script( 'twentynineteen-customize-controls', get_theme_file_uri( '/js/customize-controls.js' ), array(), '20250717', array( 'in_footer' => true ) ); } add_action( 'customize_controls_enqueue_scripts', 'twentynineteen_panels_js' ); /** * Sanitizes custom color choice. * * @param string $choice Whether image filter is active. * @return string Sanitized color option. */ function twentynineteen_sanitize_color_option( $choice ) { $valid = array( 'default', 'custom', ); if ( in_array( $choice, $valid, true ) ) { return $choice; } return 'default'; } template-tags.php000066600000016544152331230430010036 0ustar00%2$s'; if ( get_the_time( 'U' ) !== get_the_modified_time( 'U' ) ) { $time_string = ''; } $time_string = sprintf( $time_string, esc_attr( get_the_date( DATE_W3C ) ), esc_html( get_the_date() ), esc_attr( get_the_modified_date( DATE_W3C ) ), esc_html( get_the_modified_date() ) ); printf( '%1$s%3$s', twentynineteen_get_icon_svg( 'watch', 16 ), esc_url( get_permalink() ), $time_string ); } endif; if ( ! function_exists( 'twentynineteen_posted_by' ) ) : /** * Prints HTML with meta information about theme author. */ function twentynineteen_posted_by() { printf( /* translators: 1: SVG icon. 2: Post author, only visible to screen readers. 3: Author link. */ '%1$s%2$s%4$s', twentynineteen_get_icon_svg( 'person', 16 ), /* translators: Hidden accessibility text. */ __( 'Posted by', 'twentynineteen' ), esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ), esc_html( get_the_author() ) ); } endif; if ( ! function_exists( 'twentynineteen_comment_count' ) ) : /** * Prints HTML with the comment count for the current post. */ function twentynineteen_comment_count() { if ( ! post_password_required() && ( comments_open() || get_comments_number() ) ) { echo ''; echo twentynineteen_get_icon_svg( 'comment', 16 ); /* translators: %s: Post title. Only visible to screen readers. */ comments_popup_link( sprintf( __( 'Leave a comment on %s', 'twentynineteen' ), get_the_title() ) ); echo ''; } } endif; if ( ! function_exists( 'twentynineteen_entry_footer' ) ) : /** * Prints HTML with meta information for the categories, tags and comments. */ function twentynineteen_entry_footer() { // Hide author, post date, category and tag text for pages. if ( 'post' === get_post_type() ) { // Posted by. twentynineteen_posted_by(); // Posted on. twentynineteen_posted_on(); $categories_list = get_the_category_list( wp_get_list_item_separator() ); if ( $categories_list ) { printf( /* translators: 1: SVG icon. 2: Posted in label, only visible to screen readers. 3: List of categories. */ '%1$s%2$s%3$s', twentynineteen_get_icon_svg( 'archive', 16 ), /* translators: Hidden accessibility text. */ __( 'Posted in', 'twentynineteen' ), $categories_list ); } $tags_list = get_the_tag_list( '', wp_get_list_item_separator() ); if ( $tags_list && ! is_wp_error( $tags_list ) ) { printf( /* translators: 1: SVG icon. 2: Posted in label, only visible to screen readers. 3: List of tags. */ '%1$s%2$s %3$s', twentynineteen_get_icon_svg( 'tag', 16 ), /* translators: Hidden accessibility text. */ __( 'Tags:', 'twentynineteen' ), $tags_list ); } } // Comment count. if ( ! is_singular() ) { twentynineteen_comment_count(); } // Edit post link. edit_post_link( sprintf( wp_kses( /* translators: %s: Post title. Only visible to screen readers. */ __( 'Edit %s', 'twentynineteen' ), array( 'span' => array( 'class' => array(), ), ) ), get_the_title() ), '' . twentynineteen_get_icon_svg( 'edit', 16 ), '' ); } endif; if ( ! function_exists( 'twentynineteen_post_thumbnail' ) ) : /** * Displays an optional post thumbnail. * * Wraps the post thumbnail in an anchor element on index views, or a div * element when on single views. */ function twentynineteen_post_thumbnail() { if ( ! twentynineteen_can_show_post_thumbnail() ) { return; } if ( is_singular() ) : ?>
%s', get_avatar( $id_or_email, twentynineteen_get_avatar_size() ) ); } endif; if ( ! function_exists( 'twentynineteen_discussion_avatars_list' ) ) : /** * Displays a list of avatars involved in a discussion for a given post. */ function twentynineteen_discussion_avatars_list( $comment_authors ) { if ( empty( $comment_authors ) ) { return; } echo '
    ', "\n"; foreach ( $comment_authors as $id_or_email ) { printf( "
  1. %s
  2. \n", twentynineteen_get_user_avatar_markup( $id_or_email ) ); } echo '
', "\n"; } endif; if ( ! function_exists( 'twentynineteen_comment_form' ) ) : /** * Displays the comment form. */ function twentynineteen_comment_form( $order ) { if ( true === $order || strtolower( $order ) === strtolower( get_option( 'comment_order', 'asc' ) ) ) { comment_form( array( 'title_reply' => null, ) ); } } endif; if ( ! function_exists( 'twentynineteen_the_posts_navigation' ) ) : /** * Displays the next and previous posts navigation. */ function twentynineteen_the_posts_navigation() { $order = get_query_var( 'order', 'DESC' ); $new_posts_text = __( 'Newer posts', 'twentynineteen' ); $old_posts_text = __( 'Older posts', 'twentynineteen' ); the_posts_pagination( array( 'mid_size' => 2, 'prev_text' => sprintf( '%s %s', twentynineteen_get_icon_svg( 'chevron_left', 22 ), ( 'DESC' === $order ) ? $new_posts_text : $old_posts_text ), 'next_text' => sprintf( '%s %s', ( 'DESC' === $order ) ? $old_posts_text : $new_posts_text, twentynineteen_get_icon_svg( 'chevron_right', 22 ) ), ) ); } endif; if ( ! function_exists( 'wp_body_open' ) ) : /** * Fires the wp_body_open action. * * Added for backward compatibility to support pre-5.2.0 WordPress versions. * * @since Twenty Nineteen 1.4 */ function wp_body_open() { /** * Triggered after the opening tag. * * @since Twenty Nineteen 1.4 */ do_action( 'wp_body_open' ); } endif;