Support » Plugin: Genesis Portfolio Pro » Show portfolio type in portfolio archive
Show portfolio type in portfolio archive
-
The widget allows the portfolio types to be displayed. How can I achieve this in the portfolio archive as well?
-
Hi, @jenxi!
You could add this PHP code to the bottom of your active theme’s functions.php file to output the types on the archive too:
add_action( 'genesis_before_while', 'sp_amend_portfolio_archive' ); /** * Add the portfolio post type links under the portfolio title. */ function sp_amend_portfolio_archive() { if ( is_post_type_archive( 'portfolio' ) ) { add_action( 'genesis_entry_footer', 'sp_add_type_to_portfolio' ); } } /** * Output portfolio post type links. */ function sp_add_type_to_portfolio() { $terms = get_the_term_list( get_the_ID(), 'portfolio-type' ); if ( ! $terms ) { return; } genesis_markup( array( 'open' => '<p %s>', 'close' => '</p>', 'context' => 'entry-meta', 'content' => genesis_strip_p_tags( do_shortcode( "[post_terms taxonomy='portfolio-type' before='']" ) ), ) ); }
Hey Nick! Thanks! This works but it places the tags below the title. How can I achieve the same look as the widget?
You can show the tags above the title (but below the image, more like the widget) by changing this line from the above code:
add_action( 'genesis_entry_footer', 'sp_add_type_to_portfolio' );
To look like this:
add_action( 'genesis_entry_content', 'sp_add_type_to_portfolio' );
Or show the tags above the image by changing the same line to this:
add_action( 'genesis_entry_content', 'sp_add_type_to_portfolio', 9 );
Hey Nick,
I tried that but the tag gets hidden behind the title.
@jenxi The code is working in my tests. Please could you link to your site so we can help?
Hey Nick, it is hidden behind the page title.
Thanks for the link, @jenxi — that’s been a big help!
To match the homepage widget styling for the Breakthrough Pro theme, you can try this code instead of anything you’ve added already (it’s the same as above except for the first
add_action
line):add_action( 'genesis_before_while', 'sp_amend_portfolio_archive' ); /** * Add the portfolio post type links under the portfolio title. */ function sp_amend_portfolio_archive() { if ( is_post_type_archive( 'portfolio' ) ) { add_action( 'genesis_after_entry_content', 'sp_add_type_to_portfolio', 9 ); } } /** * Output portfolio post type links. */ function sp_add_type_to_portfolio() { $terms = get_the_term_list( get_the_ID(), 'portfolio-type' ); if ( ! $terms ) { return; } genesis_markup( array( 'open' => '<p %s>', 'close' => '</p>', 'context' => 'entry-meta', 'content' => genesis_strip_p_tags( do_shortcode( "[post_terms taxonomy='portfolio-type' before='']" ) ), ) ); }
You’ll also need to add this to your theme’s
style.css
or at Appearance → Customize → Additional CSS if you want the terms to appear uppercase on the portfolio archive, like they do on the homepage:.genesis-pro-portfolio.post-type-archive .entry-header .entry-meta { text-transform: uppercase; }
Hey Nick,
That worked! Thanks!
The new
add_action
worked. However, the CSS needed some tweaking.I had to use this instead:
.genesis-pro-portfolio .entry-header .entry-meta { text-transform: uppercase; }
Great, thanks for the update, @jenxi!
Hey @modernnerd, I’m having this same issue but with the Business Pro theme, I’ve tried all of the above but can’t get the portfolio types menu to show up on my archive page. Can you help? Sorry for hijacking thread.
@nickreckless I replied to the separate thread you opened at https://wordpress.org/support/topic/link-to-portfolio-page-with-certain-type-selected/#post-11112331. I hope it helps!
- The topic ‘Show portfolio type in portfolio archive’ is closed to new replies.