Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

I have a custom post type, Doctors, that I need to create a dropdown nav for. I just want it to populate a select list with all the posts of that CPT and navigate to that post on selection.

I'm doing a couple other dropdowns with wp_dropdown_categories, but I guess there's no built in function for listing a post type?

share|improve this question
add comment

2 Answers

You'll need to use get_posts and roll your own drop down.

Something like this (somewhere in functions.php):

<?php
function wpse34320_type_dropdown( $post_type )
{
    $posts = get_posts(
        array(
            'post_type'  => $post_type,
            'numberposts' => -1
        )
    );
    if( ! $posts ) return;

    $out = '<select id="wpse34320_select"><option>Select a Doctor</option>';
    foreach( $posts as $p )
    {
        $out .= '<option value="' . get_permalink( $p ) . '">' . esc_html( $p->post_title ) . '</option>';
    }
    $out .= '</select>';
    return $out;
}

Then in your template...

<?php echo wpse34320_type_dropdown( 'doctors' ); ?>
share|improve this answer
    
Thanks so much! I'll try that out. I need to finally learn PHP... –  Holden Nov 21 '11 at 13:10
    
Can't seem to get this working - any suggestions? I'm not even seeing a dropdown... –  Holden Nov 21 '11 at 19:55
add comment

I've added a javascript line to 'Jump' directly to the selection.

Before:

$out = '<select id="wpse34320_select"><option>Select a Doctor</option>';

After:

$out = '<form name="jump1"><select name="jump2" id="wpse34320_select" OnChange="location.href=jump1.jump2.options[selectedIndex].value">><option>Select a doctor</option>';
share|improve this answer
2  
This is really, really annoying for keyboard users. They cannot reach the second page now. –  toscho Feb 5 '12 at 13:07
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.