web-dev-qa-db-ja.com

選択したページテンプレートに応じてメタボックスを非表示にする

私は以下の この答えからの - JQueryスクリプトを使用しています - /選択されたPage Templateに依存するメタボックスの表示を切り替えます。以下の例は、デフォルトテンプレートが選択されているときの注目画像メタボックスを示しています。

(function($){
$(function() {

    $('#page_template').change(function() {
        $('#postimagediv').toggle($(this).val() == 'default');
    }).change();

});
})(jQuery);

私のたぶん単純な質問は...私のページテンプレートの題名付きの画像ボックスだけを表示するためにこのコードを取得するにはどうすればいいですか:サービス

私は単に'default'を 'Services'に変更することを試みましたが、運が悪いです。

1
leannekera

valueは、トグルを見たときに見えるものとは異なります。その部分は人間のためのものです。値を見るためには、ページのソースを見なければなりません。 template.contact.phpによって作成されたテンプレートがある場合、そのボックスのvaluetemplate.contact.phpになります。したがって、valuephpファイル名のように見えます。

0
s_ha_dum

Selectの値はファイル名に設定されているので、テンプレートファイルがservices.phpであると仮定します。

jQuery().ready(function($) {

var $featImgDiv = $('#postimagediv');

$('#page_template').change(function() {
    if ( $(this).val() == 'services.php' ) {
      $featImgDiv.show();
    } else {
       $featImgDiv.hide();
    }
}).change();

});
1
gmazzap