Ich möchte in meinem Blog auf der Startseite nur Artikel, welche in der Kategorie "Allgemein" abgelegt sind anzeigen lassen.
Ich habe in meiner Navigation einen Menüpunkt, den ich "Neuigkeiten" genannt habe.
Bei Wordpress habe ich nun zwei Kategorien angelegt:
- Allgemein
- Neuigkeiten
Wie kann ich das machen, dass auf der Startseite (index.php) nur die Artikel, die ich unter "Allgemein" abgelegt habe erscheinen und wenn ich auf den Menüpunkt "Neuigkeiten" klicke, das die Artikel die unter "Neuigkeiten" abgelegt wurden erscheinen?
Vielen Dank für eure Hilfe!
Startseite und Kategorien Problem
-
-
- Gerade eben
- 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)
-
query_posts() ist das Zauberwort. Bau mal folgendes in die index.php deines Themes vor dem Loop ein:
-
Kommt das in die index.php oder in die Sidebar?
-
Habe auch versucht einfach eine statische Seite als "Startseite" festzulegen... also einfach eine erstellt und dann bei Einstellungen als Startseite ausgewählt... funktioniert aber nicht! Woran kann das liegen?
Sonst hätte ich als Startseite eine statische Seite gemacht und den Link "Neuigkeiten" einfach mit der Kategorie "Neuigkeiten" verlinkt... dann würde das normal auch reichen... -
Kommt das in die index.php oder in die Sidebar?
Was hab ich denn geschrieben? ;-)Zitat von marXBau mal folgendes in die index.php deines Themes vor dem Loop ein:
Die statische Startseite würde ich erstmal sein lassen, die ist hier nicht unbedingt nötig. Warum sie nicht "funktioniert" kann ich dir ohne weiteres auch nicht sagen.
-
Ich habe das jetzt nochmals versucht und es funktioniert immer noch nicht.
Habe jetzt auch ein neues Problem:
Bei meinem Projekt unter http://www.akgez.de/site/ habe ich statische Seiten angelegt für "Über uns" - "Reisevarianten" und "Kontakt"
Durch die Permalinks heißt der Pfad für "Über uns" jetzt:
http://www.akgez.de/site/ueber-uns
Anstatt das die statische Seite angezeigt wird, erfolgt nun die Ausgabe der Artikel!
Befinde ich mich jetzt z.B. auf der Startseite und klicke auf "Über uns" so ändert sich zwar der Link in der Browserleiste, der Inhalt bleibt aber gleich.
Liegt das an den Permalinks oder was? -
Ich habe das jetzt nochmals versucht und es funktioniert immer noch nicht.
Welches Theme? Welche Template-Dateien enthält das Theme?
ZitatHabe jetzt auch ein neues Problem:
Stopp! Eins nach dem anderen, vielleicht haben beide Probleme dieselbe Ursache. -
Ich nutze als Basis das Template "TerraFirma".
Habe damit schon andere Projekte realisiert und hatte noch nie solch ein Problem....
Das Template besteht aus folgenden Dateien:
- 404.php
- achive.php
- comments.php
- contact.php
- footer.php
- functions.php
- header.php
- index.php
- page.php
- page-archives.php
- page-links.php
- search.php
- sidebar.php (rechte Sidebar)
- sidebar1.php
- style.css -
Irgendwelche Plugins, die den Loop beeinflussen? Poste mal bitte deine index.php, mit der Änderung query_posts().
-
Das hier ist meine index.php (wie gesagt, ich hab nix verändert! habe mit dieser index bis jetzt noch nie Probleme gehabt!)
PHP
Alles anzeigen<?php get_header();?> <?php get_sidebar();?> <?php include (TEMPLATEPATH . "/sidebar1.php"); ?> <div id="content"> <!-- primary content start --> <?php if ($posts) { if (get_settings('terrafirma_asideid') != "") $AsideId = get_settings('terrafirma_asideid'); function stupid_hack($str) { return preg_replace('|</ul>\s*<ul class="asides">|', '', $str); } ob_start('stupid_hack'); foreach($posts as $post) { the_post(); ?> <?php if ( in_category($AsideId) ) : ?> <ul class="asides"> <li id="p<?php the_ID(); ?>"> <?php echo wptexturize($post->post_content); ?> <br/> <?php comments_popup_link('(0)', '(1)','(%)')?> | <a href="<?php the_permalink(); ?>" title="Permalink: <?php echo wptexturize(strip_tags(stripslashes($post->post_title), '')); ?>" rel="bookmark">#</a> <?php edit_post_link('(Bearbeiten)'); ?> </li> </ul> <?php else: // If it's a regular post or a permalink page ?> <div class="post" id="post-<?php the_ID(); ?>"> <div class="header"> <h3><a><?php the_title(); ?></a></h3> </div> <div class="entry"> <?php the_content('Den ganzen Beitrag lesen »'); ?> <?php wp_link_pages(); ?> <p class="post-tags"> <?php if (function_exists('the_tags')) the_tags('Tags: ', ', ', '<br/>'); ?> </p> </div> <div class="footer"> <?php edit_post_link('Bearbeiten'); ?> </div> </div> <?php endif; // end if in category ?> <?php } } else { echo '<p>Beitrag / Seite nicht gefunden.</p>'; } ?> <p align="center"><?php posts_nav_link(' - ','« Vorherige Einträge','Nächste Einträge »') ?></p> <!-- primary content end --> </div> <?php get_footer();?> -
Wenn du willst kann ich dir auch nen Zugang zum Backend geben um auf Fehlersuche zu gehen... weil momentan komm ich da echt nicht mehr weiter...
-
Das hier ist meine index.php (wie gesagt, ich hab nix verändert! habe mit dieser index bis jetzt noch nie Probleme gehabt!)
Nunja, wenn du noch nichts größeres ändern musstest, z.B. eben in den Loop eingreifen, dann glaub ich dir das gerne. ;-) Das Theme nutzt aber nicht den normalen "while have_posts()"-Loop, sondern die foreach-Variante.Probier mal folgendes:
PHP
Alles anzeigen<?php get_header();?> <?php get_sidebar();?> <?php include (TEMPLATEPATH . "/sidebar1.php"); ?> <div id="content"> <!-- primary content start --> [COLOR="Red"] <?php if ( is_home() ) { $posts = get_posts($query_string . "&category_name=Allgemein"); } ?>[/COLOR] <?php if ($posts) { if (get_settings('terrafirma_asideid') != "") $AsideId = get_settings('terrafirma_asideid'); function stupid_hack($str) { return preg_replace('|</ul>\s*<ul class="asides">|', '', $str); } ob_start('stupid_hack'); foreach($posts as $post) { the_post(); ?> -
Gut hab das jetzt so eingebaut und scheint zu funktionieren.
Da ich aber der Startseite immer nur den selben Text stehen habe, habe ich mir überlegt, bei den Einstellungen als Startseite einen statischen Text auszuwählen.
Das ist soweit ja auch einfach... statische Seite anlegen und bei den "Lese" Einstellungen auswählen.
Wenn ich das jetzt aber so mache, dann passiert überhaupt nichts!
Außerdem funktionieren die Verlinkungen auch nicht (siehe z.B. "über uns"...) da müsste normal eine statische Seite angezeigt werden, statt dessen werden hier die "Neuigkeiten" angezeigt...
Zu sehen ist das alles unter: akgez Augenlaser & Beauty Travels -
Dann poste mal bitte die page.php.
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!