In: , ,
On: 2008 / 02 / 25 Viewed: 47847 times
Shorter URL for this post: http://ozh.in/gz

To add custom content to the "Write" admin pages (where you write posts, pages or links), WordPress 2.5 introduces a new function set: add_meta_box()

add_meta_box

Simple plugin example :

PHP:
  1. <?php
  2. /*
  3. Plugin Name: Example: Add Meta Box
  4. Plugin URI: #
  5. Description: Simple example showing how to add a "meta box" in WP 2.5
  6. Version: 0.0
  7. Author: Ozh
  8. Author URI: http://planetozh.com/blog/
  9. */
  10.  
  11. // This function tells WP to add a new "meta box"
  12. function add_some_box() {
  13.     add_meta_box(
  14.         'ozh', // id of the <div> we'll add
  15.         'My Box', //title
  16.         'add_something_in_the_box', // callback function that will echo the box content
  17.         'post' // where to add the box: on "post", "page", or "link" page
  18.     );
  19. }
  20.  
  21. // This function echoes the content of our meta box
  22. function add_something_in_the_box() {
  23.     echo "I'm living in a box";
  24. }
  25.  
  26. // Hook things in, late enough so that add_meta_box() is defined
  27. if (is_admin())
  28.     add_action('admin_menu', 'add_some_box');
  29.  
  30. ?>

The catch here is to hook the function that add our "meta box" (here: add_some_box()) late enough so that the function it needs, add_meta_box(), has been defined. Hooking on 'admin_menu' is fine.

If you want something compatible with both WordPress 2.3 and 2.5, you will need something like the following:

PHP:
  1. if (function_exists('add_meta_box') {
  2.     // 2.5 style
  3. } else {
  4.     // 2.3
  5. }

Related posts

Shorter URL

Want to share or tweet this post? Please use this short URL: http://ozh.in/gz

Metastuff

This entry "WordPress Snippet: add_meta_box()" was posted on 25/02/2008 at 10:51 pm and is tagged with , ,
Watch this discussion : Comments RSS 2.0.

17 Blablas

    Pages: [2] 1 » Show All

  1. 17
    WordPress snippet: add_meta_box() per ag... Italy »
    pingback on 29/Apr/09 at 2:15 pm # :

    [...] breve tutorial con un pezzo di codice per aggiungere tramite plugin del contenuto personalizzato nella pagina di [...]

  2. 16
    Roger Brazil »
    wrote, on 07/Apr/09 at 3:56 pm # :

    Giovanni,

    Veja se isso ajuda:
    Maybe this can help:

    http://www.code-styling.de/english/how-to-use-wordpress-metaboxes-at-own-plugins

    Câmbio?
    Over?

  3. 15
    Usando Wordpress Hooks - Ganchos | Tutor... United States »
    pingback on 24/Dec/08 at 3:03 pm # :

    [...] documentação do WordPress dá pra saber que a (nova) função para criar caixas de opções é a add_meta_box. E se add adiciona, remove exclui e te pergunta três parâmetros. [...]

  4. 14
    anilmakhijani.com » Adding Meta In... France »
    pingback on 13/Oct/08 at 7:27 pm # :

    [...] I found a useful blog post on how to add text fields to the “link management” admin menu in WordPress:  http://planetozh.com/blog/2008/02/wordpress-snippet-add_meta_box/ [...]

  5. 13
    ben France »
    said, on 28/Aug/08 at 4:15 am # :

    Next step is how to save a data field :)

  6. 12
    Giovanni Brazil »
    replied, on 18/Jun/08 at 3:15 am # :

    Hi and thanks for the great reading.

    Could answer me, if is there any link or tutorial to insert these meta box's, in a plugin page ?

    In my case, I'm writing a domain manager to control a few domains I have, and I want to add these meta box's on the 'Add a Domain' page.

    Kind Regards!

  7. 11
    Ozh France »
    thought, on 10/Jun/08 at 9:06 pm # :

    Ping » No idea. This code has nothing to do with the editor.

Pages: [2] 1 » Show All

Leave a Reply

Comment Guidelines or Die

  • HTML: You can use these tags: <a href=""> <em> <i> <b> <strong> <blockquote>
  • Posting code: Post raw code (no <> &lt; etc) within appropriate tags : [php][/php], [css][/css], [html][/html], [js][/js], [sql][/sql], [xml][/xml], or generic [code][code]
  • Gravatars: Curious about the little images next to each commenter's name ? Go to Gravatar.
  • Spam: Various spam plugins on patrol. I'll put pins in a Voodoo doll if you spam me.
  • I will mark as Spam test comments, all comments with SEO names (ie "My Cool Online Shop" instead of "Joe") or containing forum-like signatures.

Read more ?

Close
E-mail It