erase all the code above from your functions.php and use this:
function cw_post_type_portfolio() {
$supports = array(
'title', // post title
'editor', // post content
'author', // post author
'thumbnail', // featured images
'excerpt', // post excerpt
'custom-fields', // custom fields
'comments', // post comments
'revisions', // post revisions
'post-formats', // post formats
);
$labels = array(
'name' => _x('portfolios', 'plural'),
'singular_name' => _x('portfolio', 'singular'),
'menu_name' => _x('portfolio', 'admin menu'),
'name_admin_bar' => _x('portfolio', 'admin bar'),
'add_new' => _x('Add New', 'add new'),
'add_new_item' => __('Add New portfolio'),
'new_item' => __('New portfolio'),
'edit_item' => __('Edit portfolio'),
'view_item' => __('View portfolio'),
'all_items' => __('All portfolios'),
'search_items' => __('Search portfolios'),
'not_found' => __('No portfolios found.'),
);
$args = array(
'supports' => $supports,
'labels' => $labels,
'public' => true,
'query_var' => true,
'rewrite' => array('slug' => 'portfolio'),
'has_archive' => true,
'hierarchical' => false,
);
register_post_type('mla_portfolio', $args);
}
add_action('init', 'cw_post_type_portfolio');
/*Custom Post type end*/
I’ve edited a few lines including removing duplication issues and using the actual $supports array which wasn’t included in the function call. I’ve also changed your posttype from plain portfolio to mla_portfolio so you’ll need to change the code for your wp_query to the correct reference.
The reason your h4 isn’t working is because you used the_title()
instead of get_the_title()
.
UPDATE
added query code:
<section>
<div class="portfolio">
<div class="row">
<?php
$args = array( 'post_type' => 'mla_portfolio', 'posts_per_page' => 10 );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
echo '<div class="col-md-4">';
echo '<h4>'.get_the_title().'</h4>';
echo '<a href="' . get_permalink() . '">' . get_the_post_thumbnail() . '</a>';
echo '</div>';
endwhile;
?>
</div>
</div>
</section>