__( 'Reviewed', 'swiftling' ), 'machine' => __( 'Machine translated', 'swiftling' ), 'outdated' => __( 'Original changed since translation', 'swiftling' ), 'partial' => __( 'Partly translated: some texts are still empty', 'swiftling' ), 'missing' => __( 'Not translated', 'swiftling' ), ); Ui::screenHeader( array( 'crumb' => __( 'Translations', 'swiftling' ), 'title' => __( 'Categories & tags', 'swiftling' ), 'description' => __( 'Names, descriptions and fields of categories, tags, product attributes and other lists. Each is translated once and shows translated everywhere: on posts and products, in menus, filters and breadcrumbs.', 'swiftling' ), ) ); if ( ! $swiftling_languages['targets'] ) { Ui::emptyState( __( 'Choose the languages first', 'swiftling' ), __( 'Content is translated into the languages you choose.', 'swiftling' ), array( __( 'Add languages', 'swiftling' ), admin_url( 'admin.php?page=swiftling-languages' ) ) ); return; } // Each list under the content it belongs to: the first of its kinds of content visitors open. $swiftling_types = swiftling_content_types(); $swiftling_lists = swiftling_term_taxonomies(); $swiftling_groups = array(); foreach ( $swiftling_lists as $swiftling_name => $swiftling_taxonomy ) { if ( ! swiftling_can_list( $swiftling_taxonomy->cap->edit_terms ) ) { continue; } $swiftling_type = (string) current( array_intersect( (array) $swiftling_taxonomy->object_type, array_keys( $swiftling_types ) ) ); $swiftling_groups[ $swiftling_type ][ $swiftling_name ] = array( 'taxonomy' => $swiftling_taxonomy, 'count' => (int) wp_count_terms( array( 'taxonomy' => $swiftling_name, 'hide_empty' => false, ) ), ); } $swiftling_states = swiftling_object_states( array_map( static function ( $name ): string { return 'terms:' . $name; }, array_keys( array_merge( array(), ...array_values( $swiftling_groups ) ) ) ) ); $swiftling_columns = 3 + count( $swiftling_languages['targets'] ); // Lists left out: those plugins keep for their own work, which no page a visitor opens shows. Each // with what it belongs to, as "Categories (Layouts)", since its name alone can be a list's above. $swiftling_left_out = array(); foreach ( get_taxonomies( array(), 'objects' ) as $swiftling_name => $swiftling_taxonomy ) { if ( isset( $swiftling_lists[ $swiftling_name ] ) || 'post_format' === $swiftling_name || ! ( $swiftling_taxonomy->show_ui || $swiftling_taxonomy->public ) ) { continue; } $swiftling_owner = get_post_type_object( (string) current( (array) $swiftling_taxonomy->object_type ) ); $swiftling_left_out[] = $swiftling_owner /* translators: 1: name of a list, e.g. Categories, 2: what it belongs to, e.g. Layouts. */ ? sprintf( __( '%1$s (%2$s)', 'swiftling' ), $swiftling_taxonomy->labels->name, $swiftling_owner->labels->name ) : $swiftling_taxonomy->labels->name; } $swiftling_left_out = array_values( array_unique( $swiftling_left_out ) ); ?>
$swiftling_entries ) : ?>

labels->name ); ?>

$swiftling_entry ) : ?> object_type, array_keys( $swiftling_types ) ), array( $swiftling_type ) ) ); ?>
labels->name ); ?>
labels->name; }, $swiftling_other ) ) ) ); ?>