Panoul Imaginii Reprezentative Lipsește Din Tipul de Postare Personalizat în WordPress 3.2

13 oct. 2011, 20:54:49
Vizualizări: 21.9K
Voturi: 5

După actualizarea de la 3.1 la 3.2 am pierdut panoul imaginii reprezentative din admin care rula într-un tip de postare personalizat.

add_action( 'init', 'create_my_post_types' );

function create_my_post_types() {
    register_post_type( 'header_image_gallery',
        array(
            'labels' => array(
            'name' => __( 'Imagini Antet' ),
            'singular_name' => __( 'Imagine Antet' ),
            'add_new' => __( 'Adaugă Nou' ),
            'add_new_item' => __( 'Adaugă Imagine Antet Nouă' ),
            'edit' => __( 'Editează' ),
            'edit_item' => __( 'Editează Imagine Antet' ),
            'new_item' => __( 'Imagine Antet Nouă' ),
            'view' => __( 'Vezi Imagini Antet' ),
            'view_item' => __( 'Vezi Imagini Antet' ),
            'search_items' => __( 'Caută Imagini Antet' ),
            'not_found' => __( 'Nu s-au găsit Imagini Antet' ),
            'not_found_in_trash' => __( 'Nu s-au găsit Imagini Antet în Coș' ),
            'parent' => __( 'Imagini Antet Părinte' ),
            ),
            'public' => true,
            'supports' => array('title','thumbnail','revisions')
        )
    );
}

Miniaturile postărilor sunt înregistrate astfel:

// Această temă folosește miniaturi pentru postări
    add_theme_support( 'post-thumbnails', array('post', 'page') );

Notă: Postările personalizate care au fost create înainte de actualizare funcționează corect în frontend arătând miniaturile lor (doar panoul de administrare pentru imaginea reprezentativă lipsește).

De asemenea: Am consultat codexul și am preluat exemplul de tip de postare personalizat, veți observa că ar trebui să arate o imagine reprezentativă > dar de asemenea nu o face.

add_action('init', 'codex_custom_init');
function codex_custom_init() 
{
  $labels = array(
    'name' => _x('Cărți', 'nume general tip postare'),
    'singular_name' => _x('Carte', 'nume singular tip postare'),
    'add_new' => _x('Adaugă Nou', 'carte'),
    'add_new_item' => __('Adaugă Carte Nouă'),
    'edit_item' => __('Editează Carte'),
    'new_item' => __('Carte Nouă'),
    'all_items' => __('Toate Cărțile'),
    'view_item' => __('Vezi Carte'),
    'search_items' => __('Caută Cărți'),
    'not_found' =>  __('Nu s-au găsit cărți'),
    'not_found_in_trash' => __('Nu s-au găsit cărți în Coș'), 
    'parent_item_colon' => '',
    'menu_name' => 'Cărți'

  );
  $args = array(
    'labels' => $labels,
    'public' => true,
    'publicly_queryable' => true,
    'show_ui' => true, 
    'show_in_menu' => true, 
    'query_var' => true,
    'rewrite' => true,
    'capability_type' => 'post',
    'has_archive' => true, 
    'hierarchical' => false,
    'menu_position' => null,
    'supports' => array('title','editor','author','thumbnail','excerpt','comments')
  ); 
  register_post_type('book',$args);
}

Dacă examinez opțiunile ecranului, nicio opțiune pentru imaginea reprezentativă nu este vizibilă în niciunul dintre exemple.

* Mi-am răspuns singur la întrebare

Probabil că în WP 3.1 nu trebuia să declari tipul tău de postare personalizat când adăugai suport pentru temă, dar în WP 3.2 trebuie!

// Această temă folosește miniaturi pentru postări
    add_theme_support( 'post-thumbnails', array('post', 'page','header_image_gallery') );
0
Toate răspunsurile la întrebare 3
3

Schimbă asta:

// Această temă utilizează imagini în miniatură pentru articole
add_theme_support( 'post-thumbnails', array('post', 'page') );

În asta:

// Această temă utilizează imagini în miniatură pentru articole
add_theme_support( 'post-thumbnails' );

Problema este că array-ul este explicit atunci când este folosit. Astfel, suportul pentru imagini în miniatură va fi adăugat doar pentru tipurile de postări incluse în array.

Omită array-ul pentru a adăuga suportul temei pentru imagini în miniatură în mod universal.

13 oct. 2011 21:57:51
Comentarii

Aaa... evident.

Devise Devise
13 oct. 2011 22:33:55

Deci, am încercat și eu asta, dar din nu știu ce motiv, nu reușesc să fac să apară zona de imagine reprezentativă în zona de administrare a tipului meu personalizat de postare. Nu sunt sigur exact ce se întâmplă... Ca o paranteză, și total nelegat de acest post, îmi cer scuze că răspund în acest fir ca și răspuns, deoarece nu găsesc opțiunea de "comentariu".

Brian Brian
11 feb. 2012 05:49:45

Încearcă să dezactivezi ACF dacă îl ai instalat.

Klevis Miho Klevis Miho
26 mar. 2015 17:52:48
0

Încearcă asta, funcționează pentru mine.

// Adăugăm suport pentru imagini reprezentative (featured images)
add_theme_support('post-thumbnails');
// Activăm suportul pentru imagini reprezentative pentru tipul nostru personalizat de postare
add_post_type_support( 'my_product', 'thumbnail' );

// Funcție pentru crearea unui tip de postare personalizat
function create_post_type() {
    register_post_type( 'my_product',
        array(
            'labels' => array(
                'name' => __( 'Produse' ), // Nume plural pentru tipul de postare
                'singular_name' => __( 'Produs' ) // Nume singular
            ),
            'public' => true, // Tipul de postare este public
            'has_archive' => true // Permite arhivă pentru acest tip de postare
        )
    );
}
// Acțiune care rulează funcția noastră la inițializarea WordPress
add_action( 'init', 'create_post_type' );
8 dec. 2015 11:53:20
0

Găsește acest cod în fișierul functions.php

    'supports'              => array( ),

Schimbă codul în

    'supports'              => array( 'thumbnail', ),

Această soluție poate fi aplicată dacă ai creat un tip de post personalizat în functions.php

13 nov. 2016 13:29:25