Was ist der "Advanced" $ -Kontext in add_meta_box?


11

Im Codex wird der Parameter $ context für die add_meta_box mit den folgenden Optionen aufgelistet:

  1. normal
  2. fortgeschritten
  3. Seite

Was macht "Fortgeschrittene"? Ich sehe keinen Unterschied zwischen "normal".

Antworten:


15

Der Unterschied zwischen normal und fortgeschritten besteht darin, dass normal vor fortgeschritten auf der Seite platziert wird.

Im Folgenden wird beispielsweise "Eins" vor "Zwei" angezeigt.

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>";
}

Wenn Sie den Kontextparameter umschalten, wird auf der Bearbeitungsseite vor "Eins" "Zwei" angezeigt:

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

Auch wenn Sie die Meta-Boxen selbst neu anordnen, indem Sie sie herumziehen, wird diese Reihenfolge gespeichert und scheint Vorrang vor den "normalen" und "erweiterten" Kontexten zu haben.


1
Vielen Dank. Das ist eine seltsame Art und Weise, wie sie beschlossen haben, $ context und $ priority zu verwenden.
Matt
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.