Astra_Social_Icon_Component_Dynamic_CSS::astra_social_dynamic_css( string $builder_type = 'header' )
Dynamic CSS
Description
Parameters
- $builder_type
 - 
					
(string) (Optional) Builder Type.
Default value: 'header'
 
Return
(String) Generated dynamic CSS for Heading Colors.
Source
File: classes/builder/type/base/dynamic-css/social-icon/class-astra-social-icon-component-dynamic-css.php
	public static function astra_social_dynamic_css( $builder_type = 'header' ) {
		$generated_css = '';
		$number_of_social_icons = ( 'header' === $builder_type ) ? astra_addon_builder_helper()->num_of_header_social_icons : astra_addon_builder_helper()->num_of_footer_social_icons;
		for ( $index = 1; $index <= $number_of_social_icons; $index++ ) {
			if ( ! Astra_Addon_Builder_Helper::is_component_loaded( 'social-icons-' . $index, $builder_type ) ) {
				continue;
			}
			$selector        = '.ast-' . $builder_type . '-social-' . $index . '-wrap';
			$icon_spacing    = astra_get_option( $builder_type . '-social-' . $index . '-space' );
			$social_stack_on = astra_get_option( $builder_type . '-social-' . $index . '-stack', 'none' );
			$icon_spacing_desktop = ( isset( $icon_spacing['desktop'] ) && '' !== $icon_spacing['desktop'] ) ? (int) $icon_spacing['desktop'] / 2 : '';
			$icon_spacing_tablet  = ( isset( $icon_spacing['tablet'] ) && '' !== $icon_spacing['tablet'] ) ? (int) $icon_spacing['tablet'] / 2 : '';
			$icon_spacing_mobile  = ( isset( $icon_spacing['mobile'] ) && '' !== $icon_spacing['mobile'] ) ? (int) $icon_spacing['mobile'] / 2 : '';
			/**
			 * Social Icon CSS.
			 */
			$css_output_desktop = array();
			$css_output_tablet  = array();
			$css_output_mobile  = array();
			if ( 'desktop' === $social_stack_on ) {
				$css_output_desktop = array(
					$selector . ' .ast-social-stack-desktop .ast-builder-social-element' => array(
						'display'       => 'flex',
						// Icon Spacing.
						'margin-left'   => 'unset',
						'margin-right'  => 'unset',
						'margin-top'    => astra_get_css_value( $icon_spacing_desktop, 'px' ),
						'margin-bottom' => astra_get_css_value( $icon_spacing_desktop, 'px' ),
					),
				);
				$css_output_tablet[ $selector . ' .ast-social-stack-desktop .ast-builder-social-element' ] = array(
					'margin-top'    => astra_get_css_value( $icon_spacing_tablet, 'px' ),
					'margin-bottom' => astra_get_css_value( $icon_spacing_tablet, 'px' ),
				);
				$css_output_mobile[ $selector . ' .ast-social-stack-desktop .ast-builder-social-element' ] = array(
					'margin-top'    => astra_get_css_value( $icon_spacing_mobile, 'px' ),
					'margin-bottom' => astra_get_css_value( $icon_spacing_mobile, 'px' ),
				);
			}
			/**
			 * Social_icons tablet CSS.
			 */
			if ( 'tablet' === $social_stack_on ) {
				$css_output_tablet = array(
					$selector . ' .ast-social-stack-tablet .ast-builder-social-element' => array(
						'display'       => 'flex',
						// Icon Spacing.
						'margin-left'   => 'unset',
						'margin-right'  => 'unset',
						'margin-top'    => astra_get_css_value( $icon_spacing_tablet, 'px' ),
						'margin-bottom' => astra_get_css_value( $icon_spacing_tablet, 'px' ),
					),
				);
				$css_output_mobile[ $selector . ' .ast-social-stack-tablet .ast-builder-social-element' ] = array(
					'margin-top'    => astra_get_css_value( $icon_spacing_mobile, 'px' ),
					'margin-bottom' => astra_get_css_value( $icon_spacing_mobile, 'px' ),
				);
			}
			/**
			 * Social_icons mobile CSS.
			 */
			if ( 'mobile' === $social_stack_on ) {
				$css_output_mobile = array(
					$selector . ' .ast-social-stack-mobile .ast-builder-social-element' => array(
						'display'       => 'flex',
						// Icon Spacing.
						'margin-left'   => 'unset',
						'margin-right'  => 'unset',
						'margin-top'    => astra_get_css_value( $icon_spacing_mobile, 'px' ),
						'margin-bottom' => astra_get_css_value( $icon_spacing_mobile, 'px' ),
					),
				);
			}
			/* Parse CSS from array() */
			$css_output  = astra_parse_css( $css_output_desktop );
			$css_output .= astra_parse_css( $css_output_tablet, '', astra_addon_get_tablet_breakpoint() );
			$css_output .= astra_parse_css( $css_output_mobile, '', astra_addon_get_mobile_breakpoint() );
			$generated_css .= $css_output;
		}
		return $generated_css;
	}
			Expand full source code Collapse full source code View on Trac
Changelog
| Version | Description | 
|---|---|
| 3.0.0 | Introduced. |