[ 'name' => '360 PDF', 'singular_name' => 'PDF', 'menu_name' => '360 PDF', 'add_new' => 'Añadir PDF', 'add_new_item' => 'Añadir PDF', 'edit_item' => 'Editar PDF', 'new_item' => 'Nuevo PDF', 'view_item' => 'Ver PDF', 'search_items' => 'Buscar PDFs', 'not_found' => 'No hay PDFs.', 'all_items' => 'Todos los PDFs' ], 'public' => false, 'show_ui' => true, 'show_in_menu' => false, 'supports' => ['title'], 'capability_type' => 'post', 'map_meta_cap' => true, 'menu_icon' => 'dashicons-media-document', ]); } public function meta_box() { add_meta_box('net360pdf_pdf_file', 'Archivo PDF', [$this, 'meta_box_html'], 'net360pdf_pdf', 'normal', 'high'); add_meta_box('net360pdf_pdf_settings', 'Configuración del visor', [$this, 'settings_html'], 'net360pdf_pdf', 'normal', 'default'); add_meta_box('net360pdf_pdf_shortcode', 'Shortcode', [$this, 'shortcode_html'], 'net360pdf_pdf', 'side', 'high'); } public function meta_box_html($post) { wp_nonce_field('net360pdf_pdf_save', 'net360pdf_pdf_nonce'); $attachment_id = (int) get_post_meta($post->ID, '_net360pdf_pdf_attachment_id', true); $url = $attachment_id ? wp_get_attachment_url($attachment_id) : get_post_meta($post->ID, '_net360pdf_pdf_url', true); ?>

Selecciona un PDF de la Biblioteca Multimedia. 360 PDF puede mostrarlo como visor tradicional o como EBOOK / FLIPBOOK.

>
ID, '_net360pdf_pdf_height', true); $height = $height !== '' ? absint($height) : 800; $download = get_post_meta($post->ID, '_net360pdf_pdf_download', true); $download = $download === '' ? '1' : $download; $fit = get_post_meta($post->ID, '_net360pdf_pdf_fit', true); $fit = $fit ?: 'width'; $mode = get_post_meta($post->ID, '_net360pdf_pdf_mode', true); $mode = in_array($mode, ['viewer', 'ebook'], true) ? $mode : 'viewer'; $cover = get_post_meta($post->ID, '_net360pdf_pdf_cover', true); $cover = $cover === '' ? '1' : $cover; $double = get_post_meta($post->ID, '_net360pdf_pdf_double', true); $double = $double === '' ? '1' : $double; $background = get_post_meta($post->ID, '_net360pdf_pdf_background', true); $background = $background !== '' && preg_match('/^#[0-9A-Fa-f]{6}$/', $background) ? $background : '#000000'; ?>

En móvil el modo EBOOK cambia automáticamente a una página por vista y admite gestos táctiles.

ID) return; $shortcode = '[360_pdf id="' . (int) $post->ID . '"]'; ?>

Copia este shortcode donde quieras mostrar el documento:

post_type !== 'net360pdf_pdf' || !current_user_can('edit_post', $post_id)) return; $attachment_id = isset($_POST['net360pdf_pdf_attachment_id']) ? absint($_POST['net360pdf_pdf_attachment_id']) : 0; $url = isset($_POST['net360pdf_pdf_url']) ? esc_url_raw(wp_unslash($_POST['net360pdf_pdf_url'])) : ''; if ($attachment_id) { $mime = get_post_mime_type($attachment_id); if ($mime === 'application/pdf') $url = (string) wp_get_attachment_url($attachment_id); else $attachment_id = 0; } update_post_meta($post_id, '_net360pdf_pdf_attachment_id', $attachment_id); update_post_meta($post_id, '_net360pdf_pdf_url', $url); $height = isset($_POST['net360pdf_pdf_height']) ? absint($_POST['net360pdf_pdf_height']) : 800; $height = max(300, min(2000, $height)); $fit_input = isset($_POST['net360pdf_pdf_fit']) ? sanitize_key(wp_unslash($_POST['net360pdf_pdf_fit'])) : ''; $fit = in_array($fit_input, ['width', 'page', '100'], true) ? $fit_input : 'width'; $mode_input = isset($_POST['net360pdf_pdf_mode']) ? sanitize_key(wp_unslash($_POST['net360pdf_pdf_mode'])) : ''; $mode = in_array($mode_input, ['viewer', 'ebook'], true) ? $mode_input : 'viewer'; $download = !empty($_POST['net360pdf_pdf_download']) ? '1' : '0'; $cover = !empty($_POST['net360pdf_pdf_cover']) ? '1' : '0'; $double = !empty($_POST['net360pdf_pdf_double']) ? '1' : '0'; $background = isset($_POST['net360pdf_pdf_background']) ? sanitize_hex_color(wp_unslash($_POST['net360pdf_pdf_background'])) : '#000000'; $background = $background ?: '#000000'; update_post_meta($post_id, '_net360pdf_pdf_height', $height); update_post_meta($post_id, '_net360pdf_pdf_fit', $fit); update_post_meta($post_id, '_net360pdf_pdf_mode', $mode); update_post_meta($post_id, '_net360pdf_pdf_download', $download); update_post_meta($post_id, '_net360pdf_pdf_cover', $cover); update_post_meta($post_id, '_net360pdf_pdf_double', $double); update_post_meta($post_id, '_net360pdf_pdf_background', $background); } public function columns($columns) { return [ 'cb' => $columns['cb'], 'title' => 'PDF', 'net360pdf_pdf_file' => 'Archivo', 'net360pdf_pdf_mode' => 'Modo', 'net360pdf_pdf_shortcode' => 'Shortcode', 'date' => 'Fecha' ]; } public function column($column, $post_id) { if ($column === 'net360pdf_pdf_file') { $url = get_post_meta($post_id, '_net360pdf_pdf_url', true); echo $url ? 'Abrir PDF' : 'Sin archivo'; } if ($column === 'net360pdf_pdf_mode') { $mode = get_post_meta($post_id, '_net360pdf_pdf_mode', true); echo $mode === 'ebook' ? 'EBOOK' : 'VISOR'; } if ($column === 'net360pdf_pdf_shortcode') { $shortcode = '[360_pdf id="'.(int)$post_id.'"]'; echo ''.esc_html($shortcode).' '; } } }