WordPress.org

Ready to get started?Download WordPress

Forums

[resolved] help with a bizarre excerpt situation (6 posts)

  1. minimel82
    Member
    Posted 3 years ago #

    Hi,

    I've got a rather bizarre question; of which I think I know what the answer might be already.

    I'm working on a site which has come up against an unusual problem; we have a post with a title and an excerpt. This post shows up in different categories, but we need the title and excerpt for this post to be different across these different categories. Can this be done?

    We already show different static text (at the top of the category feed) depending on the category name. But I don't think that's the same solution to my problem. Unless you can run a loop within the loop to check for the category names and check for post IDs and display different excerpts manually written into the loop code. Like the static text for the top of feeds??

    I can't find a plugin that might manage this and nor can I find any information on my problem on the internet.

    I have to avoid duplication of content due to google penalties, but we have to have this information show up in these different categories but at the same time have it specifically relevant to these categories.

    My company basically run educational training courses based around our products. The products can be used across several teaching subjects, though the core of the training courses are the same. Can you see my problem?

    I have thought about creating just a static pages with links through to a generic post. This will mean that I can have different titles and descriptions but still relate to only one post.

    Anyone able to help?

  2. jonnyauk
    Member
    Posted 3 years ago #

    So essentially you want a number of different titles and excerpts for the same post, and then to display them in different areas of your site depending on the category being viewed?

    One suggestion would be:

    - Setup custom fields with names such as alt-title-1, alt-title-2, alt-title-3, alt-title-4, alt-excerpt-1, alt-excerpt-2, alt-excerpt-3, alt-excerpt-4

    - Dig into your theme files and amend wherever you are calling the title, replace it with a PHP conditional statement ('if', or 'switch') to detect for category - (in_category('news'))

    - Display the custom field output instead of the title or excerpt - see http://codex.wordpress.org/Custom_Fields

    - You will need it in your header too, don't forget the title is called there!

    Manipulating this in sidebars and widgets is another matter... and a-little beyond the scope of a forum post, but this should get you along the right lines. I've done stuff like this before and it works a treat;)

  3. minimel82
    Member
    Posted 3 years ago #

    Oh hi Jonnyauk! Thank you so much for your reply! Really do appreciate your help!

    I'll have a go with your suggestion this afternoon; it seems quite a simple solution from what you say. Though I never thought about, and didn't realise the power of custom fields.

    I've been testing locally with a switch statement; thought about querying the post ID. But your solution seems simpler.

    I'll let you know how I get on later today!

    Thanks once again! Hope you don't mind how I came about asking for help.

  4. jonnyauk
    Member
    Posted 3 years ago #

    No problem;) Custom fields are great for CMS type controls in WordPress. Essentially you can use them for any extra data you need to attach to any post content and then use that in your theme files any way you want... good luck with it all and remember to always refer to the WordPress Codex pages for development reference.

  5. minimel82
    Member
    Posted 3 years ago #

    Jonnyauk - your solution worked a treat! Thank you very much!

    In case anyone else comes across this same situation; here's my code as it appears in the loop in my category.php:

    <?php if (is_category('tester')) { ?>
    	<h4><a href="<?php the_permalink(); ?>" alt="<?php echo get_post_meta($post->ID, 'alt-title-1', true); ?>" title="<?php echo get_post_meta($post->ID, 'alt-title-1', true); ?>"><?php echo get_post_meta($post->ID, 'alt-title-1', true); ?></a></h4>
    
    	<?php echo get_post_meta($post->ID, 'alt-excerpt-1', true); ?>
    
    	<p>(<a href="<?php the_permalink(); ?>" alt="Read more..." title="Read more..." class="readMore">Read more...</a>)</p>
    
    	<p class="postmetadata">
    									<?php _e('Resource subject:'); ?> <?php the_category(', ') ?> <?php _e('|'); ?> <?php comments_popup_link('No Reviews »', '1 Review »', '% Reviews »'); ?> <?php the_tags(); ?> <?php edit_post_link('Edit this post entry', ' | ', ''); ?>
    	</p>
    
    <?php }else{ ?>
    	<h4><a href="<?php the_permalink(); ?>" alt="<?php the_title(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h4>
    
    	<?php the_excerpt(); ?>
    
    	<p>(<a href="<?php the_permalink(); ?>" alt="Read more..." title="Read more..." class="readMore">Read more...</a>)</p>
    
    	<p class="postmetadata">
    									<?php _e('Resource subject:'); ?> <?php the_category(', ') ?> <?php _e('|'); ?> <?php comments_popup_link('No Reviews »', '1 Review »', '% Reviews »'); ?> <?php the_tags(); ?> <?php edit_post_link('Edit this post entry', ' | ', ''); ?>
    	</p>
    <?php } ?>

    Cheers, Mel.

  6. jonnyauk
    Member
    Posted 3 years ago #

    Good work;)

Topic Closed

This topic has been closed to new replies.

About this Topic