$value ) { if ( isset( $value['name'] ) && ! empty( $value['name'] ) ) { $schema['supply'][ $key ]['@type'] = 'HowToSupply'; $schema['supply'][ $key ]['name'] = ! empty( $value['name'] ) ? wp_strip_all_tags( (string) $value['name'] ) : null; } } } if ( isset( $data['tool'] ) && ! empty( $data['tool'] ) ) { foreach ( $data['tool'] as $key => $value ) { if ( isset( $value['name'] ) && ! empty( $value['name'] ) ) { $schema['tool'][ $key ]['@type'] = 'HowToTool'; $schema['tool'][ $key ]['name'] = ! empty( $value['name'] ) ? wp_strip_all_tags( (string) $value['name'] ) : null; } } } if ( isset( $data['steps'] ) && ! empty( $data['steps'] ) ) { foreach ( $data['steps'] as $key => $value ) { $schema['step'][ $key ]['@type'] = 'HowToStep'; if ( isset( $value['name'] ) && ! empty( $value['name'] ) ) { $schema['step'][ $key ]['name'] = $value['name']; } if ( isset( $value['url'] ) && ! empty( $value['url'] ) ) { $schema['step'][ $key ]['url'] = $value['url']; } if ( isset( $value['description'] ) && ! empty( $value['description'] ) ) { $schema['step'][ $key ]['itemListElement']['@type'] = 'HowToDirection'; $schema['step'][ $key ]['itemListElement']['text'] = $value['description']; } $step_image = wp_get_attachment_image_src( $value['image'], 'full' ); if ( isset( $value['image'] ) && ! empty( $value['image'] ) ) { $schema['step'][ $key ]['image'] = BSF_AIOSRS_Pro_Schema_Template::get_image_schema( $step_image, 'ImageObject' ); } } } return apply_filters( 'wp_schema_pro_schema_how_to', $schema, $data, $post ); } } }