• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

[Wordpress] Problem mit dem Kürzen eines Textes

NE555

James Grieve
Registriert
17.12.07
Beiträge
136
Hallo!

Ich habe folgendes Problem: Ich will auf meiner Startseite zwei Posts einer Kategorie anzeigen (dies klappt eh ;) ), allerdings müssen die in einen bestimmten Bereich meiner Seite passen, deshalb muss deren Text gekürzt werden.

Alle im Internet zu findenden Methoden führen nicht ans Ziel (meist mit Funktionen). Es geht einfach nicht. Ich habe da die Vermutung, dass diese Tutorials deshalb immer nur den Titel kürzen, weil das mit dem Content nicht so einfach geht...

Dann hab ich's einfach mal mit meinen PHP Kenntnissen versucht, allerdings spießt sich's da mit dem Loop. Das denke ich zumindest, denn seht selbst...

Click for large view - Uploaded with Skitch

Der Text ist zwar gekürzt, allerdings ist der erste Text viel kürzer als der zweite und auf die richtige Zeichenanzahl komme ich auch nicht...

Dies ist mein Code:

Code:
<?php $content = get_the_content(); echo substr($content, 0,80).'...'; ?>

LG
Nico
 

jomi

Kleiner Weinapfel
Registriert
05.10.07
Beiträge
1.138
Wenn du Wordpress benutzt, kannst du doch die WP-eigene Möglichkeit nehmen, den Postinhalt zu kürzen. Im WYSIWYG-Editor ging das früher, als ich WP benutzt habe, recht einfach per Button; im HTML-Editor musste man, wenn ich mich recht entsinne, an der gewünschten Stelle
Code:
<!--more beliebigerText-->
eingeben.

(Statt "beliebigerText" konnte man irgendeinen Text hinschreiben, der dann zum vollständigen Artikel verlinkte; wenn du nichts hingeschrieben hast, wurde der Standardtext — offenbar "mehr…", wie in deinem Screenshot — eingefügt.)
 

drp

Jerseymac
Registriert
12.04.11
Beiträge
458
Schick mal etwas mehr PHP-Code. So wie es oben ist, müsste es eig. richtig sein...
 

drp

Jerseymac
Registriert
12.04.11
Beiträge
458
Und du kannst noch überprüfen mit
Code:
$content = get_the_content();
if(strlen($content) > 79) {
$content = substr($content, 0,80).'...';
}
echo $content;
 

NE555

James Grieve
Registriert
17.12.07
Beiträge
136
@jomi: Naja... ich brauche aber eine exakte Länge des Textes, da müsste man dann jedes mal zählen...

Hier ist der Code:

Click for large view - Uploaded with Skitch

... und noch einmal zum Kopieren:

Code:
<ul>
					
						<?php query_posts('cat=5&showposts=2'); ?> 
						<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
						<li>
						<h3><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h3>
						<p>
							<?php $content = get_the_content(); echo substr($content, 0,80).'...'; ?>
						</p>
						<span class="more"><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>">mehr...</a></span>
						<?php endwhile; else: ?>
						<p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
						<?php endif; ?>
						</li>
				</ul>
 

NE555

James Grieve
Registriert
17.12.07
Beiträge
136
Ich weiß zwar nicht warum, allerdings funktioniert's jetzt einfach... man muss bei einem Eintrag einfach nur die erste (leere) Zeile löschen, also einen Zeilenumbruch und es geht. Entschuldigt meine Frage...

lg
nico