Rumah Tutorial CMS WordTekan Menambah kotak meta tersuai ke antara muka admin WordPress

Menambah kotak meta tersuai ke antara muka admin WordPress

Feb 18, 2025 am 08:26 AM

WordPress memberi kuasa kepada pengguna untuk membuat kotak meta tersuai untuk jawatan, halaman, dan jenis pos tersuai secara langsung dalam antara muka admin. API WordPress juga menawarkan pilihan penyesuaian yang luas untuk kotak meta lalai. Tutorial ini membimbing anda melalui membuat, menyimpan, mengesahkan, dan mengambil semula data meta tersuai, bersama -sama dengan mengeluarkan kotak meta lalai.

Konsep Utama:

  • Kotak meta tersuai memperluaskan fungsi WordPress dengan membenarkan penambahan maklumat tambahan kepada jawatan, halaman, dan jenis pos tersuai. Ini dipaparkan di papan pemuka WordPress.
  • Semasa pengekodan terlibat, plugin seperti bidang adat maju, kotak meta, dan cMB2 memudahkan proses dengan ketara. Pengubahsuaian fail tema diperlukan untuk memaparkan data kotak meta tersuai di hujung depan.
  • Kotak meta tersuai berkuasa tetapi mempunyai batasan. Mereka tidak dapat mengubah antara muka Admin WordPress atau menambah ciri yang tidak disokong. Pengesahan data dan sanitisasi adalah penting untuk keselamatan.

Memahami Kotak Meta Kustom:

Kotak meta tersuai menyediakan cara untuk menambah medan melebihi pilihan lalai WordPress. Plugin dan tema menggunakannya untuk mengumpul input pengguna berstruktur. Mereka juga boleh ditambah ke papan pemuka, mencerminkan fungsi widget papan pemuka WordPress (yang pada dasarnya adalah kotak meta sendiri). Kotak meta standard termasuk editor, medan tersuai, imej yang dipaparkan, kategori, dan bahagian tag.

Kotak meta tersuai vs medan tersuai:

Bidang Custom Store Pasangan Nilai Utama Data. Kotak Meta menawarkan jenis input yang lebih serba boleh, termasuk pemetik warna, muat naik fail, dan jatuh turun.

Data meta dijelaskan:

Data Meta mewakili nilai yang dimasukkan ke dalam medan kotak meta tersuai. WordPress menyimpan data ini sebagai pasangan nilai utama (nilai meta dan nilai meta), di mana kunci meta adalah nama medan dan nilai meta adalah data yang dimasukkan.

Mewujudkan kotak meta:

fungsi add_meta_box daftar dan memaparkan kotak meta tersuai. Kod berikut menambah kotak meta tersuai ke catatan WordPress:

1

2

3

4

5

6

7

8

9

function custom_meta_box_markup() {

    // Content will be added here later

}

 

function add_custom_meta_box() {

    add_meta_box("demo-meta-box", "Custom Meta Box", "custom_meta_box_markup", "post", "side", "high", null);

}

 

add_action("add_meta_boxes", "add_custom_meta_box");

Salin selepas log masuk
Salin selepas log masuk

add_meta_box menggunakan tujuh argumen: id (pengenal unik), tajuk (tajuk yang dipaparkan), panggilan balik (fungsi untuk memaparkan kandungan), skrin (jenis pos), konteks (kedudukan), keutamaan (pesanan dalam konteks), dan panggilan balik Argumen.

Adding Custom Meta Boxes to the WordPress Admin Interface

Menambah medan ke kotak meta tersuai:

mari tambahkan input teks, dropdown, dan kotak semak:

Kod ini termasuk pengesahan nonce untuk keselamatan dan penggunaan

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

function custom_meta_box_markup($object) {

    wp_nonce_field(basename(__FILE__), "meta-box-nonce");

    ?>

    <div>

        <label for="meta-box-text">Text:</label>

        <input name="meta-box-text" type="text" value="<?php echo esc_attr(get_post_meta($object->ID, "meta-box-text", true)); ?>">

        <br><br>

        <label for="meta-box-dropdown">Dropdown:</label>

        <select name="meta-box-dropdown">

            &lt;?php

            $option_values = array(1, 2, 3);

            foreach ($option_values as $value) {

                $selected = ($value == get_post_meta($object-&gt;ID, "meta-box-dropdown", true)) ? 'selected' : '';

                echo "<option value=\"{$value}\" {$selected}>{$value}</option>";

            }

            ?&gt;

        </select>

        <br><br>

        <label for="meta-box-checkbox">Check Box:</label>

        &lt;?php

        $checkbox_value = get_post_meta($object-&gt;ID, "meta-box-checkbox", true);

        $checked = ($checkbox_value == "true") ? 'checked' : '';

        ?&gt;

        <input name="meta-box-checkbox" type="checkbox" value="true" <?php echo $checked; ?>&gt;

    </div>

    &lt;?php

}

Salin selepas log masuk
Salin selepas log masuk
untuk mendapatkan data sedia ada.

get_post_meta

Menyimpan data meta:

cangkuk

menjimatkan data: save_post

1

2

3

4

5

6

7

8

9

function custom_meta_box_markup() {

    // Content will be added here later

}

 

function add_custom_meta_box() {

    add_meta_box("demo-meta-box", "Custom Meta Box", "custom_meta_box_markup", "post", "side", "high", null);

}

 

add_action("add_meta_boxes", "add_custom_meta_box");

Salin selepas log masuk
Salin selepas log masuk
Kod ini mengesahkan nonce, kebenaran pengguna, dan menyelamatkan auto. Secara kritis, ia menggunakan

untuk mengelakkan kelemahan keselamatan. sanitize_text_field

Mengeluarkan kotak meta:

Fungsi

membuang kotak meta. Contohnya, untuk mengeluarkan kotak meta medan tersuai: remove_meta_box

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

function custom_meta_box_markup($object) {

    wp_nonce_field(basename(__FILE__), "meta-box-nonce");

    ?&gt;

    <div>

        <label for="meta-box-text">Text:</label>

        <input name="meta-box-text" type="text" value="<?php echo esc_attr(get_post_meta($object->ID, "meta-box-text", true)); ?>">

        <br><br>

        <label for="meta-box-dropdown">Dropdown:</label>

        <select name="meta-box-dropdown">

            &lt;?php

            $option_values = array(1, 2, 3);

            foreach ($option_values as $value) {

                $selected = ($value == get_post_meta($object-&gt;ID, "meta-box-dropdown", true)) ? 'selected' : '';

                echo "<option value=\"{$value}\" {$selected}>{$value}</option>";

            }

            ?&gt;

        </select>

        <br><br>

        <label for="meta-box-checkbox">Check Box:</label>

        &lt;?php

        $checkbox_value = get_post_meta($object-&gt;ID, "meta-box-checkbox", true);

        $checked = ($checkbox_value == "true") ? 'checked' : '';

        ?&gt;

        <input name="meta-box-checkbox" type="checkbox" value="true" <?php echo $checked; ?>&gt;

    </div>

    &lt;?php

}

Salin selepas log masuk
Salin selepas log masuk
ingat bahawa cangkuk yang digunakan (mis.,

atau do_meta_boxes) bergantung pada konteks. wp_dashboard_setup

Kesimpulan:

Meta Box API WordPress adalah alat yang berkuasa untuk melanjutkan fungsi. Memahami nuansa dan mengutamakan amalan terbaik keselamatan adalah kunci kepada pelaksanaan yang berkesan. Contoh kod yang disediakan menggambarkan proses teras, tetapi ingat untuk menyesuaikannya dengan keperluan khusus anda dan sentiasa membersihkan input pengguna.

Atas ialah kandungan terperinci Menambah kotak meta tersuai ke antara muka admin WordPress. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

5 IDE terbaik untuk pembangunan WordPress (dan mengapa) 5 IDE terbaik untuk pembangunan WordPress (dan mengapa) Mar 03, 2025 am 10:53 AM

5 IDE terbaik untuk pembangunan WordPress (dan mengapa)

Buat plugin WordPress dengan teknik OOP Buat plugin WordPress dengan teknik OOP Mar 06, 2025 am 10:30 AM

Buat plugin WordPress dengan teknik OOP

Cara Lulus Data dan String PHP ke JavaScript di WordPress Cara Lulus Data dan String PHP ke JavaScript di WordPress Mar 07, 2025 am 09:28 AM

Cara Lulus Data dan String PHP ke JavaScript di WordPress

Cara Menanam dan Melindungi Fail PDF dengan Plugin WordPress Cara Menanam dan Melindungi Fail PDF dengan Plugin WordPress Mar 09, 2025 am 11:08 AM

Cara Menanam dan Melindungi Fail PDF dengan Plugin WordPress

See all articles