Hallo liebe Community,
ich möchte wie hier geschrieben "Ein Artikel der Kategorie X auf Seite Y anzeigen" und muss dafür ein Template hinzufügen.
Nur wohin?
Gruß Flo
Um schreiben oder kommentieren zu können, benötigen Sie ein Benutzerkonto.
Sie haben schon ein Benutzerkonto? Melden Sie sich hier an.
Jetzt anmeldenHier können Sie ein neues Benutzerkonto erstellen.
Neues Benutzerkonto erstellenHallo liebe Community,
ich möchte wie hier geschrieben "Ein Artikel der Kategorie X auf Seite Y anzeigen" und muss dafür ein Template hinzufügen.
Nur wohin?
Gruß Flo
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.
Das Template gehört in den Ordner des Themes. Wenn es korrekt angelegt wurde, erscheint es beim Schreiben in der Templateauswahl.
Ich gehe dieser Anleitung nach:
http://faq.wpde.org/artikel-der-ka…ite-y-anzeigen/
Ich habe mal ein Template meines Design kopiert:
<?php
/*
Template Name:No comment
*/
?>
<?php get_header(); ?>
<div id="contents" class="clearfix">
<div id="left_col">
<?php $options = get_option('mc_options'); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<div class="post clearfix" id="single_post">
<div class="post_content_wrapper">
<h2 class="post_title"><span><?php the_title(); ?></span></h2>
<?php edit_post_link(__('[ EDIT ]', 'monochrome'), '<p>', '</p>' ); ?>
<div class="post_content">
<?php the_content(__('Read more', 'monochrome')); ?>
<?php wp_link_pages(); ?>
</div>
</div>
</div>
<?php endwhile; else: ?>
<div class="post_odd">
<div class="post clearfix">
<div class="post_content_wrapper">
<?php _e("Sorry, but you are looking for something that isn't here.","monochrome"); ?>
</div>
<div class="post_meta">
</div>
</div>
</div>
<?php endif; ?>
</div><!-- #left_col end -->
<?php get_sidebar(); ?>
</div><!-- #contents end -->
<div id="footer">
<?php get_footer(); ?>
Alles anzeigen
Nun soll ich die Zeile
beifügen.
und danach
<?php $listCategory = get_post_meta($post->ID, 'category_name', true); ?>
<?php query_posts( 'category_name=' . $listCategory ); ?>
Also dann:
<?php
/*
Template Name:No comment
*/
?>
<?php get_header(); ?>
<div id="contents" class="clearfix">
<div id="left_col">
<?php $options = get_option('mc_options'); ?>
<?php query_posts('category_name=Allgemein'); ?>
<?php $listCategory = get_post_meta($post->ID, 'category_name', true); ?>
<?php query_posts( 'category_name=' . $listCategory ); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<div class="post clearfix" id="single_post">
<div class="post_content_wrapper">
<h2 class="post_title"><span><?php the_title(); ?></span></h2>
<?php edit_post_link(__('[ EDIT ]', 'monochrome'), '<p>', '</p>' ); ?>
<div class="post_content">
<?php the_content(__('Read more', 'monochrome')); ?>
<?php wp_link_pages(); ?>
</div>
</div>
</div>
<?php endwhile; else: ?>
<div class="post_odd">
<div class="post clearfix">
<div class="post_content_wrapper">
<?php _e("Sorry, but you are looking for something that isn't here.","monochrome"); ?>
</div>
<div class="post_meta">
</div>
</div>
</div>
<?php endif; ?>
</div><!-- #left_col end -->
<?php get_sidebar(); ?>
</div><!-- #contents end -->
<div id="footer">
<?php get_footer(); ?>
Alles anzeigen
Aber wieso sehe ich das Template nicht/passiert nichts?
öhm, mit 2 query_posts() wird das nix geben. Ich versteh auch grad dein Vorhaben nicht. Du willst beide Varianten des FAQ-Artikels verbinden? Wozu?
m.M.n. sollte doch die Variante reichen, wenn du nur die Kategorie "Allgemein" abfragen willst:
<?php query_posts('category_name=Allgemein'); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
Die 2. Variante im FAQ-Artikel beschreibt die Übergabe via Benutzerdefiniertem Feld.
Also entweder ... oder ...
Ansonsten schreib doch mal was genau du damit vor hast.
ich würde gerne Variante 2 machen, leider verstehe ich nicht, wie dies gemeint/gemacht wird.
Wärst du so freundlich und erklärst es mir(im groben sollte reichen, aber bitte nicht so grob wie im faq)
Du musst ein benutzerdefiniertes Feld (Name: category_name) für die Seiten anlegen, wo du dann den Kategorie Namen (value) angibst.
Und dann holst du das benutzerdefinierte Feld via get_post_meta():
<?php
$listCategory = get_post_meta($post->ID, 'category_name', true);
query_posts( 'category_name=' . $listCategory );
?>
http://codex.wordpress.org/Using_Custom_Fields
http://codex.wordpress.org/Function_Reference/get_post_meta
und wie lege ich im Wordpress 3.3.1 ein benutzerdefiniertes Feld an???
ist im Link von maxe erklärt...http://codex.wordpress.org/Using_Custom_Fields
ooooh, sorry das habe ich voll übersehen!
Sah aus wie die Signatur...;)
Lieder klappt das auch net?!
Ich möchte Variante 2 machen
ich habe nun
im Template eingefügt vor
und
als HTML auf die Seite und nun kommt folgender Fehler
Parse error: syntax error, unexpected '<' in /users/plath/www/AGB/wp-content/themes/officegrey/onecolumn-page.php on line 15
was mache ich falsch?
Zitatund
als HTML auf die Seite und nun kommt folgender Fehler
Das gehört in dieser Reihenfolge ins Template:
<?php $listCategory = get_post_meta($postid, 'category_name', true); ?>
<?php query_posts( 'category_name='.$listCategory ); ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
Auf die Seite kommt dein Inhalt und kein Code
Also ich füge den code ins template und gebe bei
<?php query_posts( 'category_name='.$listCategory ); ?>
die kategorie an: 'category_name=Allgemein' oder?
das klappt leider net :confused:
korrektur...
Wie ist das gemeint?
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!