|string $atts As WordPress parsed them — * an EMPTY STRING where the shortcode carried no attributes at all, * which is the one shape a naive `$atts['id']` gets wrong. */ public static function render($atts): string { $id = is_array($atts) ? (string) ($atts['id'] ?? '') : ''; return InlineAnchor::html($id); } }