Articles Listing
7 posts by 4 authors in: Forums > CMS Builder
Last Post: October 1, 2010 (RSS)
I've created a 'news' page that is both the detail page and the listing page. So the detail of the first news section comes up.. then underneith, there's a list of archive news articles displaying only the first 5 articles in list form. This is all working perfectly with 2 viewers here's what I need....
1. in the list form, I want to display the title and only a few lines of the content. How do I show only a certain number of characters of a single section?
2. the viewer url is the same as the detail url, when clicking on an archive, it simply displays that detail on the page and still displays a list of the first 5 below it. In that list, I want to remove the item that's already being displayed.
3. then on a completely seperate page using the list view, I want to show ALL RECORDS, except for the first 5.
Your assistance is most appreciated.
Creative Director
JAM Graphics
Re: [jtedescojam] Articles Listing
By Kenny - October 1, 2009 - edited: October 1, 2009
1. Limit Number of Words Shown
//Pre Head Code-----------------------------------
function maxWords($textOrHtml, $maxWords) {
$text = strip_tags($textOrHtml);
$words = preg_split("/\s+/", $text, $maxWords+1);
if (count($words) > $maxWords) { unset($words[$maxWords]); }
$output = join(' ', $words);
return $output;
}
//Page Code---------------------------------------
<?php echo maxWords($record['content'], 25) ?>
2. I'm not sure how this is working, can you provide a site example?
3. Add 'offset' => 4, to your top of page code to get to start at the 6th record. (record numbering starts at 0)
Kenny
Re: [sagentic] Articles Listing
Creative Director
JAM Graphics
Re: [jtedescojam] Articles Listing
By Kenny - October 3, 2009
[:(] Frustrated....
Kenny
Re: [sagentic] Articles Listing
By Chris - October 5, 2009
2. the viewer url is the same as the detail url, when clicking on an archive, it simply displays that detail on the page and still displays a list of the first 5 below it. In that list, I want to remove the item that's already being displayed.
So you have two variables, I'll assume they're called $newsRecord and $newsRecords. $newsRecord is the selected record you're displaying details for, and $newsRecords is a list of the first 5 records. In your foreach which loops over $newsRecords, add the line of code in red below:
<?php foreach ($newsRecords as $record): ?>
<?php if ($record['num'] == $newsRecord['num']) { continue; } ?>
That will skip listing a record with the same record number (num) as the one you're displaying details for.
I hope this helps. Please let me know if you have any questions.
Chris
Re: [sagentic] Articles Listing
Creative Director
JAM Graphics
Re: [jtedescojam] Articles Listing
By Jason - October 1, 2010
maxWords is going to treat your content as an HTML string so <a> and <img> tags will count towards the maximum number of "words". There isn't a simple way of getting the script to ignore tags as part of the word count. If this is something you need, we could look at creating a custom solution for your through consulting. If this would be something you're interested in, please send an email to consulting@interactivetools.com with the requirements you would need.
Thanks.
Jason Sauchuk - Project Manager
interactivetools.com
Hire me! Save time by getting our experts to help with your project.
http://www.interactivetools.com/consulting/