WordPress.org

Ready to get started?Download WordPress

Forums

Pachyderm
[resolved] Custom Post format (5 posts)

  1. pmillier
    Member
    Posted 1 year ago #

    Hello and thank you for your beautiful theme !

    I see in the index.php that "If you want to overload [the post-format-specific-template] in a child theme then include a file called content-___.php (where ___ is the Post Format name) and that will be used instead."

    I would like the "aside" & "quote" formats to act exactly as the default format (=excerpt instead of full content), but I can't find the default format template. I'm quite new in building site, and I don't know at all what I'm suppose to write in my new content-aside.php to make it look like exactly like the default format...

    Or is there a simpler way to make all posts, regardless of their format, to appear only as excerpts ?

    Thank you for your help !

  2. Caroline Moore
    Member
    Theme Author

    Posted 1 year ago #

    Currently Asides and Quotes act the same as the default format, they all use content.php. There's some logic in there that determines whether an excerpt will be shown. Formatted posts (asides, quotes) show full content -- you could change this by copying content.php to your child theme, renaming it to content-aside.php (and content-quote.php), then going to line 33 and removing the get_post_format() || check from the if statement there.

    That should force quotes and asides to display full content.

    (Edited because I forgot how my own theme works. I have too many of 'em. :))

  3. pmillier
    Member
    Posted 1 year ago #

    Thanks for replying.

    I copied content.php in content-quote.php, but nothing's changed :
    I've got no title for the post and the text remains in full content.

    I'm not sure what I'm supposed to remove and why. I tried to remove the get_post_format() || portion of the code, but I've got a syntax error... And anyway, it seems to me this part is for displaying the excerpt.

    What I want is to force quotes & aside to display only the excerpt on home page, category, archives... Just like the default standard post format.

  4. Caroline Moore
    Member
    Theme Author

    Posted 1 year ago #

    I understand what you're trying to do, let's break it down:

    It's possible the child theme isn't seeing the content-quote.php file because it doesn't exist in the parent theme. Therefore, you may have to add it directly to the parent theme instead. Haven't tried this myself, give that a shot and see if you have better luck. (I'm not sure how this will affect your theme when it's updated, might be good to keep a backup of these files handy.)

    This is line 33 of content.php:

    if ( get_post_format() || is_single() || 'page' == get_post_type() ) :

    In plain English, it would read like so:

    If ( This post has a format that is not Standard OR I'm viewing a single post OR I'm viewing a Page )

    So you're removing the "This post has a format that is not Standard" part, such that the IF statement proceeds to the next condition and skips the_content() for posts with a format. You want the line to look like this:

    if ( is_single() || 'page' == get_post_type() ) :

    I tried this quickly on my test site and it worked as expected, so the syntax error likely means you've deleted an extra character somewhere.

    To show the post title, you may need to alter the CSS in your child theme. There's a section for post formats in style.css in the parent theme where you'll see something to the effect of:

    .format-quote .entry-title {
       display: none;
    }

    I don't have the stylesheet in front of me so that may not be exact, but that's the pattern to look for. Similarly, Asides would use .format-aside .entry-title. In your child theme, set those to display: block to stop hiding the titles.

    You can find many resources for CSS here:
    http://codex.wordpress.org/CSS

    And I recommend using Firebug for troubleshooting CSS:
    http://getfirebug.com

    Good luck!

  5. pmillier
    Member
    Posted 1 year ago #

    It worked perfection in creating the content-quote.php in the original theme & removing the get_post_format() || in it !

    I also deleted .post.format-quote .entry-title {
    display: none;
    }

    and

    .post.format-quote .entry-meta {
    display: none;
    }

    in my css, to make the quote format appear just as the default one.

    I mark this topic as resolved.

    Thanks a lot for your help & explanations Caroline !

Topic Closed

This topic has been closed to new replies.

About this Theme

About this Topic