WordPress Version: 6.5
/**
* Builds the correct top level classnames for the 'core/search' block.
*
* @param array $attributes The block attributes.
*
* @return string The classnames used in the block.
*/
function classnames_for_block_core_search($attributes)
{
$classnames = array();
if (!empty($attributes['buttonPosition'])) {
if ('button-inside' === $attributes['buttonPosition']) {
$classnames[] = 'wp-block-search__button-inside';
}
if ('button-outside' === $attributes['buttonPosition']) {
$classnames[] = 'wp-block-search__button-outside';
}
if ('no-button' === $attributes['buttonPosition']) {
$classnames[] = 'wp-block-search__no-button';
}
if ('button-only' === $attributes['buttonPosition']) {
$classnames[] = 'wp-block-search__button-only wp-block-search__searchfield-hidden';
}
}
if (isset($attributes['buttonUseIcon'])) {
if (!empty($attributes['buttonPosition']) && 'no-button' !== $attributes['buttonPosition']) {
if ($attributes['buttonUseIcon']) {
$classnames[] = 'wp-block-search__icon-button';
} else {
$classnames[] = 'wp-block-search__text-button';
}
}
}
return implode(' ', $classnames);
}