3

我有这个问题,我现在不知道如何解决。由于 Polylang 插件,我们有一个多语言的 wordpress 页面。除了来自其他插件的自定义帖子类型外,一切都很好。使用此自定义帖子类型创建的帖子会加载基本语言的内容,即英语,但每当我们更改语言时,它就会停止工作。它不加载内容

我注册的帖子类型是这样的:

register_post_type( 'placement', 
    array(
        'labels' => array(
            'name' => __( 'Placementy' ),
            'singular_name' => __( 'Placement' )
        ),
        'public' => true,
        'menu_icon' => 'dashicons-welcome-write-blog'
    )
);

我试过,在我的functions.php而不是plugins主文件中注册帖子类型,仍然一样......其他自定义帖子类型工作得很好,它们的注册方式相同。我还尝试在我的 wordpress 主题中为自定义帖子类型创建模板,而不是使用插件中的模板,但它也失败了……不知道为什么它不起作用。尤其是当其他一切正常时。更改后还清除了缓存。检查开发人员和本地环境中的更改。什么会导致这种行为?

4

1 回答 1

2

在functions.php中

    add_filter('pll_get_post_types', 'add_cpt_to_pll', 10, 2);
function add_cpt_to_pll($post_types, $hide) {
    if ($hide)
        // hides 'my_cpt' from the list of custom post types in Polylang settings
        unset($post_types['my_cpt']);
    else
        // enables language and translation management for 'my_cpt'
        $post_types['my_cpt'] = 'my_cpt';
    return $post_types;
}

有关更多详细信息 https://polylang.wordpress.com/documentation/documentation-for-developers/filter-reference/

于 2017-11-18T15:16:12.247 回答