Quel est le contexte $ «avancé» dans add_meta_box?

11

Dans le codex, il répertorie le paramètre $ context pour add_meta_box comme ayant les options suivantes:

  1. Ordinaire
  2. Avancée
  3. côté

Que fait "avancé"? Je ne vois aucune différence entre cela et "normal".

mat
la source

Réponses:

15

La différence entre normal et avancé est que normal sera placé sur la page avant avancé.

Par exemple, ce qui suit affichera "Un" avant "Deux"

function admin_init_test() {
    add_meta_box('one', __('One'), 'test_one', 'post', 'advanced');
    add_meta_box('two', __('Two'), 'test_two', 'post', 'normal');
}
add_action('admin_init', 'admin_init_test');

function test_two() {
    echo "<p>test_two</p>";
}
function test_one() {
    echo "<p>test_one</p>";
}

Si vous changez le paramètre de contexte, alors "Two" s'affichera avant "One" sur la page d'édition:

add_meta_box('one', __('One'), 'test_one', 'post', 'normal');
add_meta_box('two', __('Two'), 'test_two', 'post', 'advanced');

De plus, si vous réorganisez vous-même les métadonnées en les faisant glisser, cet ordre est enregistré et semble avoir la priorité sur les contextes «normal» et «avancé».

ampère
la source
1
Merci. C'est une étrange façon qu'ils ont décidé d'utiliser $ context et $ priority.
mat