5

(ワードプレス バージョン 3.4)

わかりました、これが私がやろうとしていることです:

ユーザーが実際に見ることのない「カスタム フィールド」というページを作成します。クライアントがカスタム フィールドに追加するだけです。彼はこれらのカスタム フィールドを毎週または毎月変更する必要があります。

これらのカスタム フィールドをヘッダー、フッター、またはサイドバー内に表示して、すべてのページで共通にする必要があります。

これを達成できるようにコードを微調整する適切な方法を知っていますか?

ありがとう!

4

2 に答える 2

17

Custom-Fieldsは投稿ごとのスコープを対象としているため、代わりにOptionsメタデータストアを使用することをお勧めします。このようにして、より便利で一貫性のある管理パネルから値を変更できます。

これは、この機能をWPに追加する方法を示すチュートリアルです。

//Custom Theme Settings
add_action('admin_menu', 'add_gcf_interface');

function add_gcf_interface() {
    add_options_page('Global Custom Fields', 'Global Custom Fields', '8', 'functions', 'editglobalcustomfields');
}

function editglobalcustomfields() {
    ?>
    <div class='wrap'>
    <h2>Global Custom Fields</h2>
    <form method="post" action="options.php">
    <?php wp_nonce_field('update-options') ?>

    <p><strong>My Name:</strong><br />
    <input type="text" name="myname" size="45" value="<?php echo get_option('myname'); ?>" /></p>

    <p><strong>Amazon ID:</strong><br />
    <input type="text" name="amazonid" size="45" value="<?php echo get_option('amazonid'); ?>" /></p>

    <p><strong>Today's Featured Website:</strong><br />
    <input type="text" name="todaysite" size="45" value="<?php echo get_option('todaysite'); ?>" /></p>

    <p><strong>Welcome Text:</strong><br />
    <textarea name="welcomemessage" cols="100%" rows="7"><?php echo get_option('welcomemessage'); ?></textarea></p>

    <p><input type="submit" name="Submit" value="Update Options" /></p>

    <input type="hidden" name="action" value="update" />
    <input type="hidden" name="page_options" value="myname,amazonid,todaysite,welcomemessage" />

    </form>
    </div>
    <?php
}
于 2012-07-30T04:56:13.890 に答える
1

Cleric のコードでは、変数を保存するときにエラーが発生しました。それは問題なく保存されましたが、非推奨のコードに関するこのエラーがありました。

その後、私はこのページを見つけました WordPress 2.8 でのプラグイン オプションの処理 with register_setting() は、WP バージョン 3.5 で完全に機能しています。

于 2013-08-26T20:40:44.210 に答える