选择自定义帖子类型的模板菜单?

时间:2011-04-13 16:53:45

标签: wordpress wordpress-plugin wordpress-theming

我在wordpress中创建了几个自定义帖子类型,并将层次结构设置为true,因此它表现为页面。

问题是,模板选择不可用。我已应用this hack来显示菜单:

  

其中有一个文件meta-boxes.php   wp-admin \包括wordpress   安装..文件的第547行,   这是功能   page_attributes_meta_box()只是添加   检查您的特定帖子   类型名称,以便能够显示   模板页面下拉。

if ( ('page' == $post->post_type  || 'yourcustomposttype' == $post->post_type) && 0 != count( get_page_templates() ) ) {
        $template = !empty($post->page_template) ? $post->page_template : false;
        ?>

这会成功显示菜单,但数据不会保存。 “父”部分保存,但“模板”不保存。

有没有人有任何想法?

3 个答案:

答案 0 :(得分:0)

我已经使用过这个插件了,帖子还可以,试试吧:)

https://wordpress.org/extend/plugins/custom-post-template/

答案 1 :(得分:0)

偶然发现这个问题寻找相同的功能。我知道这有点晚了,但我想我找到了解决方案。通过使用插件查看自述文件,您可以将其添加到functions.php中,以获取您正在寻找的功能。

/**
 * Hooks the WP cpt_post_types filter 
 *
 * @param array $post_types An array of post type names that the templates be used by
 * @return array The array of post type names that the templates be used by
 **/
function my_cpt_post_types( $post_types ) {
    $post_types[] = 'movie';
    $post_types[] = 'actor';
    return $post_types;
}
add_filter( 'cpt_post_types', 'my_cpt_post_types' );

答案 2 :(得分:0)

此功能从 4.7 开始就内置到核心中。启用应用自定义模板内的功能。例如,如果您有一个名为“促销”的模板,并且您想将其应用到您的 CPT“美国、英国、澳大利亚”

    struct exampleSymbol: View {
    var body: some View {
        Image(systemName: "text.bubble.fill")
            .foregroundColor(.blue)
            .font(.system(size: 100))
    }
}

struct ContentView: View {
    var body: some View {
        ZStack {
            VStack {
                RoundedRectangle(cornerRadius: 10).frame(width: 80, height: 60).foregroundColor(.white)
            }
            VStack {
                exampleSymbol()
                    .shadow(color: .gray, radius: 2, x: 3, y: 3)
            }
        }
    }
}

WordPress 4.7 Brings Custom Page Template Functionality to All Post Types