I’ve done some searching over the last couple of hours and I couldn’t find a solution that worked; so here goes nothing:

I have a custom post type which has 'taxonomies' => array('post_tag') attached to it. I can properly add tags to this custom post type’s item and can even find those tagged items in my archive.php (/tags/{tagname}).

So far, so good.

But now I want my “translated to English” item to show its tags aswell (/en/tags/{a different tagname}) (I don’t want copies of my tags, just new non-related tags for English.

However; this doesn’t work! All tags I tagged in English items do not show up on my /en/tags/ page (not even if I leave out the /en/ part)

In my custom post type I’ve tried changing the has_archive key to a few things:

  • true
  • false
  • 'has_archive' => icl_translate('wpml_custom', 'wpml_custom_case',
    'case')

All to no avail.

In short: How can I get my English tags to work just as the Dutch(default lang) for my custom post type so they show up in my archive?

The registration of my post type

function case_post_type() {

    $labels = array(
        'name' => 'Cases',
        'singular_name' => 'Case',
        'add_new' => 'Toevoegen',
        'add_new_item' => 'Nieuw case toevoegen',
        'edit_item' => 'Case bewerken',
        'new_item' => 'Nieuwe case',
        'all_items' => 'Alle cases',
        'view_item' => 'Bekijk case',
        'search_items' => 'Zoek case',
        'not_found' =>  'Geen cases gevonden',
        'not_found_in_trash' => 'Geen cases gevonden in de prullenbak',
        'menu_name' => 'Cases'
    );

    $args = array(
        'labels' => $labels,
        'public' => true,
        'publicly_queryable' => true,
        'show_ui' => true,
        'show_in_menu' => true,
        'exclude_from_search' => false,
        'query_var' => true,
        'rewrite' => array( 'slug' => 'case' ),
        'capability_type' => 'page',
        'has_archive' => false,
        'hierarchical' => false,
        'menu_position' => 8,
        'supports' => array('title', 'editor', 'excerpt', 'thumbnail', 'page-attributes'),
        'menu_icon'   => 'dashicons-format-gallery',
        'taxonomies' => array('post_tag')
    );

    register_post_type( 'case', $args );
}
add_action( 'init', 'case_post_type', 0 );

My Archive.php just has the_loop(). plain and simple.

Read more here: Post tags in Custom Post Type not showing in archive with WPML in non-default language


Solution:

If you know the solution of this issue, please leave us a reply in Comment section, to update the question.


Wordpress related questions and answers: