[
‘name’ => ‘Photo Album’,
‘singular_name’ => ‘Album Photo’,
‘add_new’ => ‘Upload New Photo’,
],
‘public’ => false,
‘show_ui’ => true,
‘menu_icon’ => ‘dashicons-images-alt2’,
‘supports’ => [‘title’],
‘capability_type’ => ‘post’,
‘capabilities’ => [
‘create_posts’ => ‘manage_options’,
],
‘map_meta_cap’ => true,
]);
}
add_action(‘init’, ‘ppa_register_album_cpt’);
// Show ONE button for upload
function ppa_add_upload_button() {
add_meta_box(
‘ppa_upload_box’,
‘Add Photo to Album’,
‘ppa_upload_button_html’,
‘ppa_album’,
‘normal’,
‘high’
);
}
add_action(‘add_meta_boxes’, ‘ppa_add_upload_button’);
// Upload button UI
function ppa_upload_button_html($post) {
wp_enqueue_media();
?>
$post_id,
‘post_title’ => ‘Photo ‘ . $post_id
]);
}
}
}
add_action(‘save_post’, ‘ppa_save_photo’);
// FRONT-END SHORTCODE
function ppa_album_shortcode() {
if (!is_user_logged_in()) {
return “
This album is private. Please log in to view the photos.
“; } $photos = new WP_Query([ ‘post_type’ => ‘ppa_album’, ‘posts_per_page’ => -1, ‘order’ => ‘ASC’, ]); ob_start(); ?>
have_posts()) {
$photos->the_post();
$img = get_post_meta(get_the_ID(), ‘_ppa_image’, true);
?>