在导航元素标题之后添加元素不像我期望的那样工作

I'm currently trying to add an empty <span> after every item title in my navigation which has childs. So only dropdown elements. Sadly also some of my non-dropdown items getting a <span> inserted after the title. This is so strange. What I'm doing wrong?

 add_filter( 'nav_menu_item_args', 'nav_menu_modify_dropdown', 10, 3 );
    function nav_menu_add_dropdown( $args, $item, $depth ) {
        error_log( print_r( $item, true ) );
        if ( $args->theme_location === 'primary-menu' && in_array( 'menu-item-has-children', $item->classes, true ) ) {
            $args->link_after = '<span></span>';
        }

        return $args;
    }