web-dev-qa-db-ja.com

カスタム分類法のチェックを要求する

私は、カスタム投稿タイプ「管理者」に複数の用語を使用した「分類」というカスタム分類法があります。投稿を保存/更新するときに位置を選択するようにフォームを検証します。

Wordpress adminの位置カスタム分類法を検証して必須フィールドにするにはどうすればよいですか。

また、ポジションの確認が必要であることをユーザーに知らせるエラーメッセージを表示します。

ありがとうございます。

1
jaysonp

このチュートリアルに従って、標準分類メタボックスをラジオボタンのセットを持つカスタムメタボックスに置き換えました。 (チュートリアルではselectを使用していますが、それほど違いはありません)。このようにして、何かが選択されていることを確認し、選択をいくつかの事前定義済みオプションに制限することができます。

http://shibashake.com/wordpress-theme/wordpress-custom-taxonomy-input-panels

デフォルトのメタボックスを削除する方法については注意がありますが、分類を定義するときにshow-uiをfalseに宣言することでUIが表示されないようにすることができます。

2
helgatheviking

私は、pre_post_updateにフックして、$_POST..で何が与えられているのかを確認してください。

2
kaiser

私は非常によく似た質問に対する答えを投稿しました こちら これは投稿フィールド(タイトル、内容など)を検証するための「フレームワーク」を提供します。投稿を送信する前のajaxによるメタフィールド(メタボックス)と分類法(カテゴリ、タグ、カスタム)。

2
Bainternet

階層的分類法を使用していると仮定すると、これは私にとってうまくいきました。「tx」を、あなたが分類法と呼んだものに変更してください。 WPが将来HTML構造を変更したり命名規則を変更した場合、これはうまくいかないかもしれません。

add_action('admin_footer', function() {
?>
<script type="text/javascript">
    jQuery(document).ready(function ($) {
        //taxonomy
        var tx = 'post-type';

        var $scope = $('#' + tx + '-all > ul');
        $('#publish').click(function(){
            if ($scope.find('input:checked').length > 0) {
                alert('found');
                return true;
            } else {
                alert('not found');
                return false;
            }
        });
    });
</script>
<?php
});
0
manish