Downloadbereich, der via Mail bestückt wird

  • Hallo Florian,

    danke schonmal!
    ich beginne das mit den Custom post types und feldern zu verstehen :-D
    Der Custom Post type Notendownload ist via CPT UI eingerichtet das hat funktioniert.

    Zu der Sache mit facebook: Das war nur um zu erläutern wie es aussehen soll es hat nichts mit facebook zu tun es sollen nur lauter Elemente, als die einzelnen Notendownload posts, wie facebook posts untereinander aufgelistet sein.

    Gruß Simon

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Ok, cool, dass das schonmal funktioniert. Die Optik kannst Du ja später selber steuern. Sobald ich wieder Zeit hab schick ich Dir mal ein kleines Template-Script, das die Noten-Posts ausgibt.

    Viele Grüße,
    Florian

  • super danke
    wo kann ich mir die posts denn anschauen und wo werden sie aufgelistet? die Website ist momentan nirgends wie ein blog sondern alles statisch

    Gesendet von meinem ONEPLUS A3003 mit Tapatalk

  • Direkt im Wordpress-Backend, da wo der Custom Post Type aufgeführt wird.

  • Hallo Florian

    das klappt jetzt! Super
    Mir ist aber aufgefallen, dass meine eingenen Felder nur bei den Standard Posts zur Auswahl stehen - bei meinen Notendownloads nicht. Wo kann ich das denn ändern?
    Jetzt geht es dann daran, eine Seite zu erstellen, wo alle Custom Posts aufgelistet und filterbar sind oder?

    Gruß Simon

  • Hi Simon,

    die Struktur für das Backend funktioniert gut, wenn man für den Custom Post Type ein Kategorie-System einsetzt.

    Hier zunächst nochmal der Code, den ich verwende um den Custom Post Type zu erzeugen. Bei mir hat auch die erste Version, die ich gepostet hatte, keine Fehler in meiner WP Website verursacht. Diese Code erzeugt einen Custom Post Type "Noten", diesen solltest Du dann auch so im Backend finden können:

    PHP
    // Register Custom Post Typefunction custom_post_type_noten() {
        $labels = array(        'name'                  => _x( 'noten', 'Post Type General Name', 'text_domain' ),        'singular_name'         => _x( 'noten', 'Post Type Singular Name', 'text_domain' ),        'menu_name'             => __( 'Noten', 'text_domain' ),        'name_admin_bar'        => __( 'Noten', 'text_domain' ),        'archives'              => __( 'Noten Archives', 'text_domain' ),        'attributes'            => __( 'Noten Attributes', 'text_domain' ),        'parent_item_colon'     => __( 'Parent Item:', 'text_domain' ),        'all_items'             => __( 'Alle Noten', 'text_domain' ),        'add_new_item'          => __( 'Neue Noten hinzufügen', 'text_domain' ),        'add_new'               => __( 'Add New', 'text_domain' ),        'new_item'              => __( 'New Item', 'text_domain' ),        'edit_item'             => __( 'Edit Item', 'text_domain' ),        'update_item'           => __( 'Update Item', 'text_domain' ),        'view_item'             => __( 'View Item', 'text_domain' ),        'view_items'            => __( 'View Items', 'text_domain' ),        'search_items'          => __( 'Search Item', 'text_domain' ),        'not_found'             => __( 'Not found', 'text_domain' ),        'not_found_in_trash'    => __( 'Not found in Trash', 'text_domain' ),        'featured_image'        => __( 'Featured Image', 'text_domain' ),        'set_featured_image'    => __( 'Set featured image', 'text_domain' ),        'remove_featured_image' => __( 'Remove featured image', 'text_domain' ),        'use_featured_image'    => __( 'Use as featured image', 'text_domain' ),        'insert_into_item'      => __( 'Insert into item', 'text_domain' ),        'uploaded_to_this_item' => __( 'Uploaded to this item', 'text_domain' ),        'items_list'            => __( 'Items list', 'text_domain' ),        'items_list_navigation' => __( 'Items list navigation', 'text_domain' ),        'filter_items_list'     => __( 'Filter items list', 'text_domain' ),    );    $args = array(        'label'                 => __( 'noten', 'text_domain' ),        'description'           => __( 'Noten Post Type', 'text_domain' ),        'labels'                => $labels,        'supports'              => array( 'title', 'editor', 'excerpt', 'author', 'thumbnail', 'comments', 'revisions', 'custom-fields', 'page-attributes', 'post-formats', ),        'taxonomies'            => array( 'category', 'post_tag' ),        'hierarchical'          => false,        'public'                => true,        'show_ui'               => true,        'show_in_menu'          => true,        'menu_position'         => 5,        'show_in_admin_bar'     => true,        'show_in_nav_menus'     => true,        'can_export'            => true,        'has_archive'           => true,                'exclude_from_search'   => false,        'publicly_queryable'    => true,        'capability_type'       => 'page',    );    register_post_type( 'noten', $args );
    }add_action( 'init', 'custom_post_type_noten', 0 );


    Anschliessend habe ich mir bei dem Post Type 'Noten' dann folgende Kategorien angelegt. Dabei habe ich diese in Eltern/Kind-Kategorien verschachtelt:

    In der Kategorie "Instrument" musst Du dann alle Instrument anlegen, die Du brauchst. Also z.B. Unterkategorie "1. Geige", "2. Geige", "Triangel" usw ;-)
    Du kannst Dir natürlich auch weitere Kategorien anlegen.
    Damit hast Du denke ich eine komplette Datenstruktur für Deine Noten im Wordpress-Backend, mit der sich später jegliche Datenmasken umsetzen lassen.

    Gruß,
    nomainstream

  • Der nächste Schritt ist es, die erforderliche Template-Datei in Deinem Theme anzulegen. Ich verwende bei meinem Test das WP-Standard-Theme "TwentySeventeen".
    Entsprechend habe ich in dem Verzeichnis "wp-content/themes/twentyseventeen" in meiner WP-Installation die Datei "page-noten.php" angelegt.

    Der Inhalt der Datei sieht wie folgt aus:

    PHP
    <?php/** * Template Name: Noten-Page * Description: The noten page template. * * @package WordPress * @subpackage Twenty_Seventeen * @since 1.0 * @version 1.0 */
    get_header(); ?>
    <div class="wrap">	<div id="primary" class="content-area">		<main id="main" class="site-main" role="main">
    			<ul id="noten">      <?php $args = array( 'post_type' => 'noten', 'posts_per_page' => -1, 'orderby' => 'name' );      $loop = new WP_Query( $args );      while ( $loop->have_posts() ) : $loop->the_post();      	echo '<li>';      	the_title('<h3>', '</h3>');      	the_content();                                echo get_the_category_list();                    echo "<br>";              	echo '</li>';      endwhile; ?>      </ul>
    		</main><!-- #main -->	</div><!-- #primary --></div><!-- .wrap -->
    <?php get_footer();


    Im Wordpress-Backend habe ich mir dann die neue Seite "Noten" angelegt und dort das Template "Noten-Page" ausgewählt, dass wir ebend erstellt haben.

    Wenn ich die Noten-Seite dann im Browser aufrufe, sieht sie bei mir mit meinen Testdaten wie folgt aus:

    Hier werden jetzt alle Noten-Posts mit allen Kategorien aufgelistet.

    Wenn Du bis zu diesem Punkt die Anleitung nachvollziehen konntest, dann kann ich Dir anschliessend eine neue Version des Template-Codes schicken, mit dem dann die Noten nach allen Kategorien filterbar sind. Und dann ist die Noten-Seite fertig! :-P

    Gruß,
    nomainstream

    Einmal editiert, zuletzt von maxe (21. Januar 2017 um 18:46)

  • Ach ja: und die Noten-Bilder(?) kannst Du in den Inhaltsbereich der Noten-Posts einfügen.

  • Wow geil danke! Ichmach mich sofort dran und meld mich nachher wieder.
    Ich bleibe aber bei dem durch das plugin erstellten Custom post type, wenn es da keine Probleme gibt?

    Edit:
    Ich werde es doch über die Functions.php versuchen, da über das Plugin keine Kategorien verfügbar sind.

    Gruß Simon

    Einmal editiert, zuletzt von Simon_Str (16. Januar 2017 um 18:43)

  • Update:
    Ich habe es versucht deinen Code in die functions.php meines Child Themes einzufügen, dann geht aber wieder alles kaputt...
    Die Functions.php sieht momentan so aus:

    Ist da evtl schon irgendwas falsch? An welche Stelle müsste dein Code?

    Ich hab gerade noch festgestellt, dass wenn ich eine änderung an der functions.php vornehme also zB diesen Code einfüge und die Seite dadurch kaputt geht, kann ich es nur beheben, indem ich 1:1 die Alte datei hochlade, also die veräderte überschreibe. Wenn ich die Änderung manuell rückgängig mache, bleibt die Seite kaputt
    Die Seite geht sogar kaputt, wenn ich nur eine neue Zeile an die functions.php unten anhänge - da stimmt doch irgendetwas nicht... ich nutze NotePad++
    Wenn ich die Änderung mit dem Windows editor mache, ist die seite hinterher garnicht mehr erreichbar

    Einmal editiert, zuletzt von Simon_Str (16. Januar 2017 um 19:06)

  • Hm, hast Du das Child-Theme selber angelegt?

    Sonst versuch doch mal in die alte Datei einen Test-Kommentar einzufügen /*test*/
    Funktioniert die Website dann noch?

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!