array( 'name' => 'Spettacoli', 'singular_name' => 'Spettacolo', 'add_new_item' => 'Aggiungi spettacolo', 'edit_item' => 'Modifica spettacolo', ), 'public' => false, 'show_ui' => true, 'publicly_queryable' => false, 'exclude_from_search'=> true, 'show_in_rest' => false, 'menu_icon' => 'dashicons-tickets-alt', 'supports' => array( 'title', 'editor', 'excerpt', 'thumbnail', 'page-attributes' ), 'has_archive' => false, 'rewrite' => false, ) ); register_post_type( 'azl_gallery', array( 'labels' => array( 'name' => 'Galleria', 'singular_name' => 'Foto', 'add_new_item' => 'Aggiungi foto', 'edit_item' => 'Modifica foto', ), 'public' => false, 'show_ui' => true, 'show_in_rest' => false, 'menu_icon' => 'dashicons-format-gallery', 'supports' => array( 'title', 'thumbnail', 'page-attributes' ), ) ); } add_action( 'init', 'azionelab_register_content_types' ); function azionelab_use_classic_editor_for_structured_content( bool $use_block_editor, string $post_type ): bool { if ( in_array( $post_type, array( 'azl_show', 'azl_gallery' ), true ) ) { return false; } return $use_block_editor; } add_filter( 'use_block_editor_for_post_type', 'azionelab_use_classic_editor_for_structured_content', 10, 2 ); function azionelab_add_meta_boxes(): void { add_meta_box( 'azl_show_details', 'Dettagli spettacolo', 'azionelab_show_meta_box', 'azl_show', 'normal' ); add_meta_box( 'azl_gallery_details', 'Dettagli foto', 'azionelab_gallery_meta_box', 'azl_gallery', 'normal' ); } add_action( 'add_meta_boxes', 'azionelab_add_meta_boxes' ); function azionelab_show_meta_box( WP_Post $post ): void { wp_nonce_field( 'azionelab_save_meta', 'azionelab_meta_nonce' ); $year = get_post_meta( $post->ID, 'azl_show_year', true ); $year = '0' === (string) $year ? '' : $year; $location = get_post_meta( $post->ID, 'azl_show_location', true ); ?>


Questo testo appare nella card dello spettacolo in homepage.



ID, 'azl_gallery_category', true ); ?>


= 1900 && $submitted_year <= 2100 ? (string) $submitted_year : ''; } $location = isset( $_POST['azl_show_location'] ) ? sanitize_text_field( wp_unslash( $_POST['azl_show_location'] ) ) : ''; update_post_meta( $post_id, 'azl_show_year', $year ); update_post_meta( $post_id, 'azl_show_location', $location ); remove_action( 'save_post', 'azionelab_save_meta' ); wp_update_post( array( 'ID' => $post_id, 'post_excerpt' => $excerpt, ) ); add_action( 'save_post', 'azionelab_save_meta' ); } elseif ( 'azl_gallery' === $post_type ) { $allowed = array( 'Lezioni', 'Backstage', 'Spettacoli', 'Gruppo' ); $category = isset( $_POST['azl_gallery_category'] ) ? sanitize_text_field( wp_unslash( $_POST['azl_gallery_category'] ) ) : ''; update_post_meta( $post_id, 'azl_gallery_category', in_array( $category, $allowed, true ) ? $category : 'Lezioni' ); } } add_action( 'save_post', 'azionelab_save_meta' ); add_filter( 'xmlrpc_enabled', '__return_false' ); add_filter( 'comments_open', '__return_false', 20 ); add_filter( 'pings_open', '__return_false', 20 ); remove_action( 'wp_head', 'wp_generator' ); add_filter( 'the_generator', '__return_empty_string' ); function azionelab_restrict_public_user_api( $result, WP_REST_Server $server, WP_REST_Request $request ) { unset( $server ); if ( ! is_user_logged_in() && str_starts_with( $request->get_route(), '/wp/v2/users' ) ) { return new WP_Error( 'rest_no_route', 'No route was found matching the URL and request method.', array( 'status' => 404 ) ); } return $result; } add_filter( 'rest_pre_dispatch', 'azionelab_restrict_public_user_api', 10, 3 ); function azionelab_disable_public_author_archives(): void { if ( is_author() && ! is_user_logged_in() ) { global $wp_query; $wp_query->set_404(); status_header( 404 ); nocache_headers(); } } add_action( 'template_redirect', 'azionelab_disable_public_author_archives' );