wpseek.com
Eine auf WordPress spezialiserte Suchmaschine für Entwickler und Theme-Autoren



block_core_navigation_get_layout_custom_property_declarations › WordPress Function

Seit7.1.0
Veraltetn/v
block_core_navigation_get_layout_custom_property_declarations ( $layout )
Parameter:
  • (array) $layout Layout configuration.
    Erforderlich: Ja
Gibt zurück:
  • (array) Navigation layout custom property declarations.
Definiert in:
Codex:

Returns the custom properties used by the Navigation block for a layout.



Quellcode

function block_core_navigation_get_layout_custom_property_declarations( $layout ) {
	$justification_values = array(
		'left'          => 'flex-start',
		'center'        => 'center',
		'right'         => 'flex-end',
		'space-between' => 'space-between',
	);
	$justify_content      = is_array( $layout ) ? ( $layout['justifyContent'] ?? 'left' ) : 'left';
	if ( ! is_string( $justify_content ) || ! isset( $justification_values[ $justify_content ] ) ) {
		$justify_content = 'left';
	}

	$justification = $justification_values[ $justify_content ];
	$is_vertical   = is_array( $layout ) && 'vertical' === ( $layout['orientation'] ?? null );
	$align         = 'center';
	$justify       = $justification;

	if ( $is_vertical ) {
		$align   = in_array( $justify_content, array( 'center', 'right' ), true ) ? $justification : 'flex-start';
		$justify = 'left' === $justify_content ? 'initial' : $justification;
	}

	return array(
		'--navigation-layout-justification-setting' => $justification,
		'--navigation-layout-direction'             => $is_vertical ? 'column' : 'row',
		'--navigation-layout-wrap'                  => is_array( $layout ) && 'nowrap' === ( $layout['flexWrap'] ?? null ) ? 'nowrap' : 'wrap',
		'--navigation-layout-justify'               => $justify,
		'--navigation-layout-align'                 => $align,
	);
}