How can I change the length of the featured collection snippet?

Since I may not use the Exhibit Builder on my site (just items and collections seems to be good enough for now) I'd like to make make the text of the featured collection text snippet on my homepage a little longer and more descriptive to serve as a kind of ersatz exhibit text. Could someone please tell me where and how I can adjust the default number of characters/words shown by the featured collection snippet?

I don't know how involved this would be but continuing on from the request above what I'd ideally like is to define my own homepage feature with content based on items sharing a common tag. In my case, one or more along the lines of:

"Featured Film: [abc]"
Text snippet of length x
Items tagged [abc]

These would then appear where the featured collection now shows up in the Thanks Roy theme (homepage, right column).

Alternatively something more generic like WordPress' most basic "Text" widget which lets you place a box with arbitrary title and text (including HTML) in the sidebar. In this way I could write a brief text and link to a search of all items matching a specific tag.

A feature like that would be wonderful in my case, at least, where not all items have images, the text is more important than the images and the amount of text varies greatly. I've looked at the Exhibit plugin but it's not a good match, I feel, for my content. I'm looking for something much simpler.

For the first question, changing the length of the description snippet, you'd replace this in the theme:

<!-- Featured Collection -->
    <div id="featured-collection">
        <?php echo display_random_featured_collection(); ?>
    </div><!-- end featured collection -->

With something like:

<?php $featuredCollection = random_featured_collection; ?>
<?php if($featuredCollection): ?>
  <h2>Featured Collection</h2>
  <h3><?php  link_to_collection($collectionTitle, array(), 'show', $featuredCollection); ?></h3>
  <p class='collection-description'><?php collection('Description', array('snippet'=>150), $featuredCollection)); ?></p>
<?php endif; ?>

You can adjust the size of the snippet using the 'snippet' key in the array passed to collection()

For the second idea, if I'm following you right, something like the following would let you display a link to Items with a particular tag:

<a href="<?php echo html_escape('items/browse?tags=' . urlencode($tagname)); ?>">
<?php echo html_escape($tagname); ?>

For a more programmatic approach, you'd probably use get_tags() to get the tags you are looking for, then loop through that array, replacing $tagname with something like $tag->name as you loop through

That's at least an approach to start with. This is untested, so I hope I have the details correct


Thanks. I tried this out. If I didn't mess up placing it in index.php, for the change the length of the snippet code above there appears to be a syntax error on this line:

<p class='collection-description'><?php collection('Description', array('snippet'=>150), $featuredCollection)); ?></p>

Oops. Sorry, looks like got overly excited about parens. Included an extra one at the end of the function call. This should be better:

<p class='collection-description'><?php collection('Description', array('snippet'=>150), $featuredCollection); ?></p>