web-dev-qa-db-de.com

Benutzerdefinierte Beitragstypen und untergeordnetes Thema

Okay, hier ist der Deal. Ich arbeite mit einem untergeordneten Thema und möchte einen benutzerdefinierten Beitragstyp.

Was ich getan habe

Fügte den folgenden Code dem functions.php des übergeordneten Themas hinzu.

add_action( 'init', 'create_fb_foto_post_type' );
function create_fb_foto_post_type() {
    register_post_type('fotos',
        array(
            'labels' => array(
                'name' => __( 'Foto\'s' ),
                'singular_name' => __( 'Foto' )
            ),
        'public' => true,
        'has_archive' => true,
        'taxonomies' => array('post_tag')
        )
    );
}

Erstellt eine Vorlagendatei single-fotos.php, die diesen Code enthält:

<?php get_header(); ?>

        <div id="primary" class="site-content">
            <div id="content" role="main">

                <?php while ( have_posts() ) : the_post(); ?>

                    <?php get_template_part( 'content', 'page' ); ?>

                    <?php comments_template( '', true ); ?>

                <?php endwhile; // end of the loop. ?>

            </div><!-- #content -->
        </div><!-- #primary -->

<?php get_footer(); ?>

Und in das Verzeichnis des untergeordneten Themas hochgeladen.

Was läuft schief?

Ich kann wählen, ob ich in Wordpress eine neue 'Foto'-Seite erstellen möchte, die das Tag-Feld enthält. Aber! Wenn ich ein Beispiel ansehen möchte, macht Wordpress nichts. Wenn ich beschließe, die Seite einzureichen und zu veröffentlichen, funktioniert sie, aber wenn ich sie dann anzeigen möchte, erhalte ich eine 404.

Was ich versucht habe

Ich habe versucht, die Vorlage in das Verzeichnis des übergeordneten Themas hochzuladen (nachdem ich die Seite erstellt habe), aber dies funktioniert auch nicht.

Irgendwelche Ideen?

3
Bram Vanroy

Sie müssen Ihre Permalinks jedes Mal leeren und neu generieren, wenn Sie benutzerdefinierte Beitragstypen oder Taxonomien ändern/hinzufügen/entfernen.

Auf die Seite mit den Permalinks zu gehen und zu speichern sollte ausreichen

(Außerdem sollte sich Ihr benutzerdefinierter Beitragstypcode in einem Plugin befinden, nicht in dem Thema, da der Benutzer sonst für immer an diesem Thema festhält.)

5
Tom J Nowell