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.

My company is hosting an event where 50 clients will be at an exhibition.

I want to create an Ehibitors section with separate admin menu. I want to be able to add Exhibits with custom fields for exhibitor_id, exhibitor_logo_img, exhibitor_title and exhibitor_bio.

What is the best way to do this? I dont want to end up with 50 exhibits in one post/page. Ideally, I want 50 separate and sortable pages within a admin menu section.

Any ideas? Hope this makes sense, WordPress noob.

Cheers,

share|improve this question
    
you could use custom post types, which is a bit overkill for such a list, or take a look at PODS - podsframework.org. This is exactly the type of datastorage you need here. –  fischi Nov 16 '12 at 9:35
add comment

3 Answers 3

up vote 2 down vote accepted

This would probably best be solved with a custom post type for the Exhibit.

That will give you a new section in the admin-area with posts/pages for each exhibitor. That way you can for example use:

  • Post thumbnail as "exhibitor_logo_img"

  • The post title as "exhibitor_title"

  • The content area as "exhibitor_bio"

  • And if you need the "exhibitor_id" separate from the content, that could be done with a custom field named "exhibitor_id".

Have a look in the WordPress codex for info on how to setup a custom post type.

Or if you prefer a more graphical way of doing it, you can also do the same with a plugin. There are several plugins that handles the setup. Such as "Custom Post Type UI".

share|improve this answer
    
Thanks, I have been having a go with CPT for a while. It should do what i want it to along with the AdvancedCustomFields plugin and CodepressAdminColumns. Im having issues adding a ACF logo image. Its probably related to the plugin. –  scottgemmell Nov 16 '12 at 15:42
add comment

As mentioned before, I think a Custom Post Type is not really the thing you are looking for here.

I would create a Custom Data Table with the PODS Framework where you can add exactly the fieldds needed, and use them in your templates. You don't need all the post functionality here, like post_date, excerpt etc.

share|improve this answer
    
You are probably right that Custom Post Types might be a little overkill. Good tip about the PODS Framework, I had totally forgotten about that! –  jzatt Nov 16 '12 at 9:58
    
Thanks, for reminding me about PODS. I might give this a go since im having some minor problems with CPT. –  scottgemmell Nov 16 '12 at 15:44
add comment

Don't know if this is enough for you, but in WP does exists the possibility to add and manage custom profile fields, that are in the Users pages, in a very simple way.

Here is the code I use in one of my sites:

/************** User Info */
function GSN_add_custom_user_profile_fields( $user ) {
?>
<h3><?php _e('Altre Informazioni', 'GSN_textdomain'); ?></h3>
<table class="form-table">
    <tr>
        <th>
            <label for="tessera"><?php _e('Tessera FIDAL', 'GSN_textdomain'); ?>
            </label></th>
        <td>
            <input type="text" name="tessera" id="tessera" value="<?php echo esc_attr( get_the_author_meta( 'tessera', $user->ID ) ); ?>" class="regular-text" /><br />
            <span class="description"><?php _e('Inserire il proprio numero tessera FIDAL: FE0.....', 'GSN_textdomain'); ?></span>
        </td>
    </tr>
    <tr>
        <th>
            <label for="annonascita"><?php _e('Anno di nascita', 'GSN_textdomain'); ?>
            </label></th>
        <td>
            <input type="text" name="annonascita" id="annonascita" value="<?php echo esc_attr( get_the_author_meta( 'annonascita', $user->ID ) ); ?>" class="regular-text" /><br />
            <span class="description"><?php _e('Inserire il proprio anno di nascita', 'GSN_textdomain'); ?></span>
        </td>
    </tr>    
</table>
<?php }
function GSN_save_custom_user_profile_fields( $user_id ) {
    if ( !current_user_can( 'edit_user', $user_id ) )
        return FALSE;
    update_usermeta( $user_id, 'tessera', $_POST['tessera'] );
    update_usermeta( $user_id, 'annonascita', $_POST['annonascita'] );
}
add_action( 'show_user_profile', 'GSN_add_custom_user_profile_fields' );
add_action( 'edit_user_profile', 'GSN_add_custom_user_profile_fields' );
add_action( 'personal_options_update', 'GSN_save_custom_user_profile_fields' );
add_action( 'edit_user_profile_update', 'GSN_save_custom_user_profile_fields' );
/*^^^^^^^^^^^^^*/
share|improve this answer
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.