Contact Form7のcssとjavascriptの読み込みを制御する

Filed under: contactform7,functions.php,wordpressプラグイン — kdcs @ 24年9月13日 金曜日

確認時のContact Form7のバージョンは5.9.8
プラグインが吐き出すcssについては以前からfunctions.phpの「wp_head関連 wp_headでプラグインのcssを読み込ませない」で対応していたが、最新バージョンのContactForm7ではwp_footerに出力されるjavascriptが多くなっている。
全ページに出力されるため、必要のないページには読み込ませない方法。(公式サイトより)

functions.php

// contactform7関連 wp_headでcss、wp_footerでjavascriptを読み込ませない-------------------
// ※cssはwp_head関連の「cssを読み込ませない」で対応中------------------------------------
add_filter( 'wpcf7_load_js', '__return_false' );
add_filter( 'wpcf7_load_css', '__return_false' );

footer.php
お問い合わせ(contact)来店予約(reservation)の場合

<?php if (is_page('reservation')||is_page('contact')): ?>
<?php
    if ( function_exists( 'wpcf7_enqueue_scripts' ) ) {
        wpcf7_enqueue_scripts();
    }
    if ( function_exists( 'wpcf7_enqueue_styles' ) ) {
        wpcf7_enqueue_styles();
    }
?>
<?php endif; ?>

基本的にcssはwp_head関連の「cssを読み込ませない」で対応中なのでfooter.phpはスクリプトの記述だけでよい

ダッシュボードに表示されるプラグイン情報を非表示にする

Filed under: functions.php,wordpressプラグイン — kdcs @ 24年9月12日 木曜日

Smash Balloon Social Photo Feedを6.5.0にしたらダッシュボードにプラグインの情報が表示されるようになった。
編集者権限や投稿者権限でも表示されてしまい、管理者以外プラグインの操作ができないようにしているので、プラグインへのリンクをクリックしても「アクセスする権限がありません」となる。

この表示は邪魔なので管理者以外は非表示にする方法
functions.php

//ダッシュボードウィジェット「Smash Balloon Social Photo Feed」非表示 --------------------
function sb_remove_dashboard_widgets() {
  if (!current_user_can('administrator')) {
     remove_meta_box('sb_dashboard_widget', 'dashboard', 'normal');
    }
}
add_action('wp_dashboard_setup', 'sb_remove_dashboard_widgets');

この記述でダッシュボードの表示オプションにも「Smash Balloon」は出なくなる

WordPress プラグイン「MW WP Form」電話番号を半角入力しても半角エラー

Filed under: MW WP Form,wordpressプラグイン — kdcs @ 23年4月5日 水曜日

WordPress プラグイン「MW WP Form」電話番号の入力を設定し、バリデーションに「電話番号と半角数字」を設定。
まず、全角数字で入力すると「電話番号の形式ではありません」と「半角数字で入力してください」のエラーが出る。
次に半角数字で入力すると「半角数字で入力してください」のエラーが出る。

ネット上に解決方法があったがプラグインのファイルを修正することになるのでバージョンアップ時に上書きされる。

以下、解決策
ファイル:wp-content\plugins\mw-wp-form\classes\validation-rules\class.numeric.php

        if ( preg_match( '/^[0-9]+$/', $value ) ) {
            return;
        }

この部分を

    if($name == "tel") {
      $val = $value;
      if (preg_match('/^[0-9]+-[0-9]+-[0-9]+/', $val)) {
        return;
      }
    } else {
      if (preg_match('/^[0-9]+$/', $value)) {
        return;
      }
    }

こう変える。
$nameとバリデーションルールを「tel」にする必要がある

WordPress プラグイン「MW WP Form」で生年月日3項目の一括バリデーション

Filed under: functions.php,MW WP Form,wordpressプラグイン — kdcs @ 23年4月5日 水曜日

MW WP Formは国産プラグインでContact Form 7より柔軟性がある。(確認ページやサンクスページ、メールデータの保存など)

生年月日など入力項目を分割してバリデーションをかけると年、月、日にそれぞれエラーメッセージが出てしまうので、年月日に一括してバリデーションをかける方法。

[mwform_select name="birth-year" children=":---,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997" post_raw="true" show_error="false"]年 [mwform_select name="birth-month" children=":---,1,2,3,4,5,6,7,8,9,10,11,12" post_raw="true" show_error="false"]月 [mwform_select name="birth-date" children=":---,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,28,29,30,31" post_raw="true" show_error="false"]日
[mwform_error keys="birth-year,birth-month,birth-date"]

それぞれのセレクトボックスのショートコードに「show_error=”false”」を入れる

functions.php

function entry_validation_rule( $Validation, $data) {
  $validation_message2 = '未入力項目があります。';

  if ( empty( $data['birth-year'] ) ) {
    $Validation->set_rule( 'birth-year', 'noempty', array( 'message' => $validation_message2 ) );
  } elseif ( empty( $data['birth-month'] ) ) {
    $Validation->set_rule( 'birth-month', 'noempty', array( 'message' => $validation_message2 ) );
  } elseif ( empty( $data['birth-date'] ) ) {
    $Validation->set_rule( 'birth-date', 'noempty', array( 'message' => $validation_message2 ) );
  }

  return $Validation;
}
add_filter( 'mwform_validation_mw-wp-form-5', 'entry_validation_rule', 10, 2 );

最後の行、mwform_validation_mw-wp-form-5の
5は、ショートコードの[mwform_formkey key=”5″]このkeyの数字

(続きを読む…)

WordPress ログインURLを変更するプラグイン「WPS Hide Login」

Filed under: wordpressプラグイン — kdcs @ 22年7月15日 金曜日

WordPressの通常ログインURL「/wp-login.php」や/login、/adminなどへのアクセスを遮断する。
指定したURLへ変更し、そのURLからでなければログインできなくする。

プラグイン「WPS Hide Login」を有効化すると、設定<一般で一般設定ページ下部に設定操作が表示される。

サイト内検索

カテゴリー

最近の投稿

↑上に戻る