1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Erweiterte Ansicht für Custom Post Types

Dieses Thema im Forum "Plugins und Widgets" wurde erstellt von nuVo, 3. April 2017.

  1. nuVo

    nuVo Member

    Registriert seit:
    3. April 2017
    Beiträge:
    13
    Zustimmungen:
    0
    Hallo alle zusammen!

    Ich konnte leider nichts vergleichbares finden oder habe einfach nur Falsch gesucht aber vielleicht ist es auch garnicht möglich.
    Ich würde gerne eine erweiterte Ansicht von meinen Custom Posts Types haben, ich generiere mit hilfe meines Plugins eine Single template datei die dann mit www.site.de/posttype/postname verfügbar ist.

    Jetzt würde ich gerne noch eine 2 Ansicht haben wollen also www.site.de/posttype/postname/aktion ist so etwas überhaupt möglich und wenn ja wo nach muss ich suchen.

    LG und Danke
     
  2. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.658
    Zustimmungen:
    1.781
    Für eine andere Form der Darstellung, z.B. als Embed, Amp, Feed o.ä., nennt sich das nicht ganz richtig, aber weitverbreitet bei WordPress "endpoint".

    Bei Google usw. finden sich damit viele Beispiele für die Ergänzung der REST-API, aber man kann auch ganz eigene "endpoints" bzw.- "routes" nutzen, hier ein älteres Beispiel.

    Wenn man Parameter übergeben und in der Seite nutzen will, wäre der Suchbegriff "query_vars", hier ein älteres Beispiel.
     
  3. nuVo

    nuVo Member

    Registriert seit:
    3. April 2017
    Beiträge:
    13
    Zustimmungen:
    0
    Danke genau das habe ich gesucht.
     
  4. nuVo

    nuVo Member

    Registriert seit:
    3. April 2017
    Beiträge:
    13
    Zustimmungen:
    0
    Ich habe grade festgestellt das es das doch nicht ist ich glaube aber ich habe es falsch erklärt.
    Ich möchte gerne eine zusätzliche Seite generieren also so das es im post loop angezeigt wird.

    Danke schon mal.
     
  5. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.658
    Zustimmungen:
    1.781
    Also eine "Unterseite"? Wenn das nicht geht, ist evtl. bei Deinem Custom Post Type einfach nur hierarchical nicht aktiv.
     
  6. nuVo

    nuVo Member

    Registriert seit:
    3. April 2017
    Beiträge:
    13
    Zustimmungen:
    0
    public function WPS_post_type_squad_init()
    {

    $labels = array(
    'name' => _x('Mannschaften', 'post type general name', 'wp-soccer'),
    'singular_name' => _x('Mannschaften', 'post type singular name', 'wp-soccer'),
    'menu_name' => _x('Mannschaften', 'admin menu', 'wp-soccer'),
    'name_admin_bar' => _x('Mannschaften', 'add new on admin bar', 'wp-soccer'),
    'add_new' => _x('Add New', 'book', 'wp-soccer'),
    'add_new_item' => __('Add New Squad', 'wp-soccer'),
    'new_item' => __('New Squads', 'wp-soccer'),
    'edit_item' => __('Edit Squad', 'wp-soccer'),
    'view_item' => __('View Squad', 'wp-soccer'),
    'all_items' => __('All Squads', 'wp-soccer'),
    'search_items' => __('Search Squads', 'wp-soccer'),
    'parent_item_colon' => __('Parent Squad:', 'wp-soccer'),
    'not_found' => __('No Squad found.', 'wp-soccer'),
    'not_found_in_trash' => __('No Squads found in tresh.', 'wp-soccer'));

    $supports = array('title','editor','thumbnail');

    $args = array(
    'labels' => $labels,
    'description' => __('Mannschaften', 'wp-soccer'),
    'public' => true,
    'menu_icon' => 'dashicons-id-alt',
    'publicly_queryable' => true,
    'show_ui' => true,
    'show_in_menu' => true,
    'query_var' => true,
    'rewrite' => array('slug' => 'squad'),
    'capability_type' => 'post',
    'has_archive' => true,
    'hierarchical' => true,
    'menu_position' => null,
    'taxonomies' => array(), // array('category', 'post_tag','page-category'),
    'supports' => $supports);

    register_post_type('squad', $args);

    // create single template
    add_filter("single_template", array($this, "WPS_post_type_squad_single_template"));

    }
     
  7. nuVo

    nuVo Member

    Registriert seit:
    3. April 2017
    Beiträge:
    13
    Zustimmungen:
    0
    also eine unterseite in einer unterseite
     
  8. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.658
    Zustimmungen:
    1.781
    • example.com/posttype/postname/ <- Seite des CPT
    • example.com/posttype/postname/nochwas/ <- Unterseite einer Seite des CPT
     
  9. nuVo

    nuVo Member

    Registriert seit:
    3. April 2017
    Beiträge:
    13
    Zustimmungen:
    0
    ja genau so hatte ich mir das vorgestellt
     
  10. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.658
    Zustimmungen:
    1.781
    Mit welchem Plugin generierst Du den Custom Post Type? Ist dort hierachical aktiv? Siehe Post #5 oben.
     
  11. nuVo

    nuVo Member

    Registriert seit:
    3. April 2017
    Beiträge:
    13
    Zustimmungen:
    0
    ja ist drin ich benutze dafür kein plugin sondern habe sie so aktiviert.
     
  12. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.658
    Zustimmungen:
    1.781
    Lege eine Unterseite an und nutze in der Loop in Deinem single-cpt.php Template sowas wie
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  13. nuVo

    nuVo Member

    Registriert seit:
    3. April 2017
    Beiträge:
    13
    Zustimmungen:
    0
    Manuell kann ich das ja im Backend machen ich würde aber gerne das es Automatisch durch das Plugin gemacht wird das. Mit reinem PHP wäre das über ein switch case leicht gemacht dann würde es ja so aussehen ?site=postname&action=posttitle&name=nochetwas
     
  14. nuVo

    nuVo Member

    Registriert seit:
    3. April 2017
    Beiträge:
    13
    Zustimmungen:
    0
    Vielleicht gibt es eine art Virtuelle Seite die man generieren kann
     
  15. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.658
    Zustimmungen:
    1.781
    Also: Du benutzt ein Plugin, aber Du benutzt kein Plugin. Du willst im CPT-Template auf eine Unterseite reagieren aber Du willst nicht im CPT-Template auf eine Unterseite reagieren. Du stellst Dir genau so eine /postname/unterseite/ vor aber Du willst keine. Alles recht verwirrend. Beschreibe doch nochmal komplett, was Du genau mit welchen Plugins machst und was dabei nicht funktioniert.
     
  16. nuVo

    nuVo Member

    Registriert seit:
    3. April 2017
    Beiträge:
    13
    Zustimmungen:
    0
    ich habe mir mit custom post types ein Plugin gebaut das auch komplett funktioniert. Ich habe mehrere costum post types die mit einander Agieren. Bedeutet mit einer erstelle ich Events mit der anderen Teams. Jetzt zeige ich unter Teams die Teams an und möchte nun (weil es schöner ist) ein Button haben der mich auf eine Seite leitet die mir die Events des Teams anzeigt. Wegen der Seo würde ich das dann gerne so haben das es hinter dem Team namen steht.
     
  17. nuVo

    nuVo Member

    Registriert seit:
    3. April 2017
    Beiträge:
    13
    Zustimmungen:
    0
    Mir wäre es auch egal wenn das andersherum wäre also z.b. events/team1
     
  18. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.658
    Zustimmungen:
    1.781
    Ok, nur hat das mit den o.g. Fragen und Antworten jetzt eher weniger zu tun.

    Wie sind "Events" und "Teams" denn technisch miteinander verknüpft?

    Wenn es keine echten Unterseiten bei "Teams" gibt, also hierarchical = false, dann könnte man einen Parameter in single-teams.php über eine Konstruktion mit query_vars herausfinden, siehe #2
     
    #18 b3317133, 3. April 2017
    Zuletzt bearbeitet: 3. April 2017
  19. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.658
    Zustimmungen:
    1.781
    • example.com/teams/team-abc/ <- Seite des CPT
    • example.com/teams/team-abc/event-xyz/ <- Seite des CPT mit query_var, siehe Post #2 im Thread

    Dann in single-teams.php die entspr. query_var auswerten und das Event aus dem anderen CPT per get_posts() und entspr. Parameter, z.B. name & post_type holen und entspr. anzeigen.
     
    #19 b3317133, 3. April 2017
    Zuletzt bearbeitet: 3. April 2017
  20. nuVo

    nuVo Member

    Registriert seit:
    3. April 2017
    Beiträge:
    13
    Zustimmungen:
    0
    Wie würde das denn aussehen wenn ich mir die Parameter aus dem Post ziehe?
    Ich stehe total auf dem Schlauch. Ich müsste ja dann auch eine if abfrage machen wenn die erweiterte Seite ausgewähltist dann zeige sie, wenn nicht dann zeige normale Seite an.

    Meine Url ist ja dynamisch also:
    www.examlpe.com/teams/team123

    und soll nur um eins erweitert werden also:
    www.examlpe.com/teams/team123/events
     
    #20 nuVo, 4. April 2017
    Zuletzt bearbeitet: 4. April 2017
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden