hast den code in der category.php eingebaut (oder in archive.php wenn es die category.php nicht gibt) ?
http://codex.wordpress.org/Template_Hierarchy
wie aus der doku ersichtlich ist, wird single.php nicht fuer die anzeige der kategorien verwendet.
Beiträge von alchymyth
-
-
bei den einzelartikeln ist der 'kommentar' text doch weg.
auf der vorderseite:
loop.php, finde das hier:
PHP<span class="comments-link"><?php comments_popup_link( __( 'Leave a comment', 'twentyten' ), __( '1 Comment', 'twentyten' ), __( '% Comments', 'twentyten' ) ); ?></span>
das taucht dreimal auf, das entscheidende ist das dritte mal (zeile 159 wenn dein editor zeilen hat)
comments_popup_link() hat eigenlich 5 arguments, aber nur drei sind im code verwendet; daher werden die letzten beiden bei default eingefuegt, und daher kommt der text bei geschlossenen kommentaren.
http://codex.wordpress.org/Function_Refer…ents_popup_link
umbauen in:PHP<span class="comments-link"><?php comments_popup_link( __( 'Leave a comment', 'twentyten' ), __( '1 Response', 'twentyten' ), __( '% Responses', 'twentyten' ), 'comments-link', '' ); ?></span>
(das letzte argument is ein leerer string '') -
-
-
-
willkommmen im forum.
da das wahrscheinlich ein modernes theme ist, mit dynamischer sidebar, werden die jetzt sichtbaren sidebar elemente ersetzt werden, sobald du das erste widget deiner wahl in den entsprechenden widget-bereich ziehst.
dashboard - design - widgets
wenn das nicht passiert, musst du wahrscheinlich sidebar.php des themes bearbeiten. -
vor dem bearbeiten sicherungskopien der theme-dateien erstellen
1. kommentar:
das is die richtige stelle; einfach genau das hier entfernen:PHPif ( ! comments_open() ) : ?> <p class="nocomments"><?php _e( 'Comments are closed.', 'twentyten' ); ?></p> <?php endif; // end ! comments_open()
(dabei beachten, dass die php tags sauber wieder geschlossen werden)
2. da du nicht genau beschrieben hast, wo du die kategorien entfernt haben willst, zwei stellen:
2a.
fuer die kategorien auf der vorderseite:
in loop.php das hier entfernen:PHP<?php if ( count( get_the_category() ) ) : ?> <span class="cat-links"> <?php printf( __( '<span class="%1$s">Posted in</span> %2$s', 'twentyten' ), 'entry-utility-prep entry-utility-prep-cat-links', get_the_category_list( ', ' ) ); ?> </span> <span class="meta-sep">|</span> <?php endif; ?>
2b.
fuer die kategorien auf einzelartikeln:
in der functions.php:PHP
Alles anzeigenfunction twentyten_posted_in() { // Retrieves tag list of current post, separated by commas. $tag_list = get_the_tag_list( '', ', ' ); if ( $tag_list ) { $posted_in = __( 'This entry was posted in %1$s and tagged %2$s. Bookmark the <a href="%3$s" title="Permalink to %4$s" rel="bookmark">permalink</a>.', 'twentyten' ); } elseif ( is_object_in_taxonomy( get_post_type(), 'category' ) ) { $posted_in = __( 'This entry was posted in %1$s. Bookmark the <a href="%3$s" title="Permalink to %4$s" rel="bookmark">permalink</a>.', 'twentyten' ); } else { $posted_in = __( 'Bookmark the <a href="%3$s" title="Permalink to %4$s" rel="bookmark">permalink</a>.', 'twentyten' ); } // Prints the string, replacing the placeholders. printf( $posted_in, get_the_category_list( ', ' ), $tag_list, get_permalink(), the_title_attribute( 'echo=0' ) ); }
den bereich wirst du wahrscheinlich neu schreiben muessen, wegen der sprachdatei; da fuer geanderte texte keine uebersetzung vorliegen werden.
oder wenn du ganz anders vorgehen willst, hier nachlesen (das mit dem [FONT=Courier New]'Thirty_Ten_Text_Wrangler')[/FONT]:
http://aaron.jorb.in/blog/2010/04/introducing-thirty-ten/ -
eine moeglichkeit (dynamisch):
category.php umbauen;
vor dem loop eine abfrage einsetzen, ob die kategorie eltern hat -
- wenn ja, dann normal weiter mit dem loop -
- wenn nein, dann ist das die 'leere' oberkategorie:
dann die direkten kinder bestimmen, und als liste ausgeben.
struktur:
anstelle des normalen loop in category.php; zB:
das hier einsetzen:PHP
Alles anzeigen<?php $cat_ID = get_query_var('cat'); //holt die kategorie-id des category archives; $cat = get_category( $cat_ID ); //holt die kategorie-daten, und prueft ob die kat keine eltern hat (negierte abfrage); if( !$cat->category_parent ) : // wenn keine eltern, dann ist das die leere oberkategorie; ?> <h2 class="pagetitle">Archive for the ‘<?php single_cat_title(); ?>’ Category</h2> <?php $cats = get_categories( 'parent=' . $cat_ID ); //holt alle direkten kinder der kategorie; if($cats) { echo '<ul>'; foreach($cats as $cat) { //ausgabe als verlinkte kategorie-namen; echo '<li><a href="' . get_category_link( $cat->term_id ) . '" title="link to ' . $cat->cat_name . '">' . $cat->cat_name . '</a></li>'; } echo '</ul>'; }; else : // sonst zum normalen loop; ?> <?php if(have_posts()) : blabla - normaler loop endif; ?> <?php endif; //ende des abfrage bereichs 'if( !$cat->category_parent ) :' ?>
[COLOR=#800080]http://codex.wordpress.org/Function_Reference/get_categories[/COLOR]
http://codex.wordpress.org/Function_Reference/get_category -
hat das theme eine comments.php - wenn ja, dann darin suchen.
wenn nicht, dann in der single.php suchen.
oder mit mehr info hier wieder melden.
(zB link zur seite; name des themes; code von der comments.php oder single.php etc..) -
mit css:
du musst nur noch die spezifischen styles fuer die links des menues finden, damit das nicht allgemein auf der ganzen seite so aussieht.
[COLOR=#ff4400]http://www.w3schools.com/CSS/CSS_pseudo_elements.asp[/COLOR]
http://www.w3schools.com/CSS/CSS_pseudo_elements.asp -
in_category() funktioniert auch mit mehreren kategorien, und sollte auch mit gemischten daten, wir zB mit id, slug, oder namen, gehen:
zB:
http://codex.wordpress.org/Function_Reference/in_category
http://codex.wordpress.org/Conditional_Tags
und dann gibts auch noch die 'elseif' moeglichkeit. -
erste moeglichkeit:
finde die stelle, wo funktion '[FONT=Courier New][COLOR=#0000bb]ot_paginate[/COLOR][COLOR=#007700]()[FONT=Verdana][COLOR=black]' definert ist;[/COLOR][COLOR=black] moeglicherweise in functions.php des themes; oder irgendwo in den theme-dateien.[/COLOR][/FONT][/COLOR][/FONT]
[COLOR=#007700][COLOR=#000000]dann aendere den code, so dass die ausgabe deinen vorstellungen entspricht.[/COLOR][/COLOR]
[COLOR=#007700][COLOR=#000000]wenn du die funktion gefunden hast und hilfe beim anpassen brauchst, kannst du den code hier posten.[/COLOR][/COLOR]
[COLOR=#007700][COLOR=#000000]jemand kann dann vieleicht weiterhelfen.[/COLOR][/COLOR]
[COLOR=#007700][COLOR=#000000][/COLOR][/COLOR]
[COLOR=#007700][COLOR=#000000]zweite moeglichkeit:[/COLOR][/COLOR]
[COLOR=#007700][COLOR=#000000]benutze ein plugin mit einstellungsmoeglichkeiten, die deinen vorstellungen entsprechen.[/COLOR][/COLOR]
[COLOR=#007700][COLOR=#000000]je nach plugin musst du wahrscheinlich die zeile[/COLOR][/COLOR]
[COLOR=#007700][COLOR=#000000][FONT=Courier New][COLOR=#0000bb]<?php ot_paginate[/COLOR][COLOR=#007700]();[/COLOR][COLOR=#0000bb]?>[/COLOR] [FONT=Verdana]anpassen; [/FONT][/FONT][/COLOR][/COLOR]
[COLOR=#007700][COLOR=#000000][FONT=Courier New][FONT=Verdana]zB fuer wp-pagenavi plugin koennte das so aussehen:[/FONT][/FONT][/COLOR][/COLOR]
[COLOR=#007700]
[COLOR=black]noch eine moeglichkeit:[/COLOR]
[COLOR=black]schreibe den theme-autor an, vielleicht hilft der weiter.[/COLOR][/COLOR] -
zB einen zaehler verwenden, der nach jeder ausgabe von einem post hochgezaehlt wird;
bei 'zaehler == 1' volle ausgabe, sonst auszug:
struktur:
PHP<?php $zaehler=1; if(have_posts()) : while(have_posts()) : the_post(); if($zaehler == 1) { the_content('weiterlesen'); } else { the_excerpt(); } $zaehler++; endwhile; endif; ?>
wie der excerpt mit einem 'read more' angezeigt wird:
http://codex.wordpress.org/Function_Reference/the_excerpt
http://codex.wordpress.org/Function_Refer…ink_to_the_post -
selber suchen: 'css sprites'
-
http://codex.wordpress.org/Template_Tags/get_posts
steht alles im beispiel code;
die entscheidende zeile ist:
dann sollte auch 'the_content();' gehen.
nb:
wieso liest hier kaum jemand die anleitung :rolleyes::idea::roll::mrgreen:
(auch wenn sie auf englisch ist, das ist nun mal die computer sprache) -
vielleicht ist das von interesse?
vom englischen forum:
http://wordpress.org/support/topic/…dgets?replies=1 -
das scheint einer der ausnahmefaelle zu sein, wo etwas im 'mutter'-theme geandert werden muss - mit der hoffnung dass dieser 'bug' beim naechsten upgrade verbessert wird.
-
wenn die template-seo abgestellt ist, dann ist das fehlen der seitentitel nicht im header.php zu suchen, sondern in den einstellungen vom wp-seo plugin.
-
das ist schon oefter hier im forum behandelt worden.
forum suche 'twenty ten bilder'
zB:
http://forum.wordpress-deutschland.org/design/73879-t…skalierbar.html -
die variable $cat ist definiert, wenn sich der code in der archive.php befindet;
in der single.php ist die variable nicht definiert, weil der artiel zu mehreren categorien gehoeren kann.
dann so versuchen:
PHP
Alles anzeigen<?php $postcats = get_the_category(); $sep = ''; $cat = ''; foreach($postcats as $postcat) { $cat .= $sep . $postcat->term_id; $sep = ','; } ?> <?php $categoryvariable=$cat; // die Variable wird als aktuelle Kategorie bestimmt $query= 'cat=' . $categoryvariable. '&showposts=5&orderby=date&order=ASC'; // die Variable wird nun mit dem Query verknüpft query_posts($query); // der Query wird ausgeführt ?> <?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> ... <?php endwhile; ?> <?php endif; ?>
der neue teil holt alle kategorien vom artikel, and fasst die mit kommata getrennt in einem string zusammen.
http://codex.wordpress.org/Function_Refer…et_the_category
ich wuerde auch noch vor und nach dem code jeweils eine zeile mit 'wp_reset_query();' einfuegen, um evtl verwirrungen durch die custom query zu vermeiden.
http://codex.wordpress.org/Function_Reference/wp_reset_query