フォーラムへの返信

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • フォーラム: プラグイン
    返信が含まれるトピック: bogo デザイン変更

    横からすみません。

    トピックと同じことを実現したく調べていましたらこちらのトピックを見つけました。

    私は以下のように実現しましたので情報共有させて頂きます。
    以下、function.phpの記述です。

    remove_shortcode( 'bogo', 'bogo_language_switcher' );
    add_shortcode('bogo', 'my_language_switcher');
    function my_language_switcher( $args = '' ) {

    remove_shortcodeで元の処理を削除
    ※なくても普通に動いてるようですが念のためいれてます。
    add_shortcodeでショートコード追加。
    bogo_language_switcherをコピーして変数名をmy_language_switcherに変更

    if ( empty( $link[‘href’] ) ) { } else { }の箇所でラベルを表示しているので、

    if($link['locale'] == "en_US") :
     $li = esc_html( 'EN' );
    elseif($link['locale'] == "ja") :
     $li = esc_html( 'JA' );
    else :
     $li = esc_html( $label );
    endif;

    リンクありの場合も同様で、
    $li = sprintf( ‘<li class=”%1$s”>%2$s’, $class, $li );
    の箇所に独自のクラスを追加もできました。

    フォーラム: プラグイン
    返信が含まれるトピック: [MW WP Form]フォームに入力した値を変数に渡す
    トピック投稿者 takemitsu

    (@takemitsu)

    自己解決いたしました。

    mwform_admin_mail_raw_mw-wp-form-xxxxを使用し、$Dataの値をセッションに渡すことができました。
    他にもっと良いやり方があるかと思いますが、まずはこれでなんとかしたいと思います。

    ありがとうございました。

    フォーラム: プラグイン
    返信が含まれるトピック: [MW WP Form] usermetaテーブル情報の表示について質問
    トピック投稿者 takemitsu

    (@takemitsu)

    早速のご連絡ありがとうございます!
    また、返信が遅れてしまい申し訳ありません。

    アドバイス頂いた通りアクションフックを使用することで表示/更新することができました。
    初期表示には、”mwform_value_mw-wp-form-xxx”を、
    更新には、”mwform_admin_mail_raw_mw-wp-form-xxx”を使用しました。

    以下にコードを記載させて頂きます。
    【ユーザ情報を初期表示】

    function my_mwform_hoge( $value, $name ) {
        if ($name === 'hoge') {
            $current_user = wp_get_current_user(); //ログイン中のユーザ情報取得
            return $current_user->meta['wpcf-hoge'];  //user_metaテーブルの情報を返す
        }
        return $value;
    }
    add_filter( 'mwform_value_mw-wp-form-922', 'my_mwform_hoge', 10, 2 );

    【ユーザ情報更新】

    function upd_prof_lastname( $Mail_raw, $value, $Data ) {
        global $wpdb;
        $data = array(
            'meta_value' => $Data->get('hogehoge'),
            'user_id'   => $Data->get('user_id'),
        );
    
        $sql = "
                UPDATE <code>&quot;. $wpdb->usermeta .&quot;</code>
                   SET <code>&quot;. $wpdb->usermeta .&quot;</code>.meta_value = %s
                 WHERE <code>&quot;. $wpdb->usermeta .&quot;</code>.user_id = %d
                   AND <code>&quot;. $wpdb->usermeta .&quot;</code>.meta_key = 'hoge'
                ";
    
        $sql = $wpdb->prepare($sql, $data);
        $wpdb->query($sql);
        return $Mail_raw;
    }
    add_filter( 'mwform_admin_mail_raw_mw-wp-form-xxx', 'upd_prof_lastname', 10, 3 );

    上記で正常に動くことを確認できました。(正しい書き方かはわかりませんが。。。)
    アドバイスのおかげでやりたかったことを実現することができました。
    本当にありがとうございました。

3件の返信を表示中 - 1 - 3件目 (全3件中)