TinyMCE Advancedで id が消されちゃう!

WordPressの純正のTinyMCEは少し物足りないので、いつもTinyMCE Advanced にお世話になっているのですが、このプラグイン、編集画面をソースモードで編集時に、id=”xxx” と入れると・・・見事に消してくれます(;_;)

以前に同じ問題で難儀したときは、Ultimate TinyMCE に逃げたのですが、使いやすいプラグインなので回避方法を調べてみました。

 

ということは、function.phpに

[html]
function my_tinymce_config( $init ) {
 $init['extended_valid_elements']= 'div[*]';
 return $init;
}
add_filter('tiny_mce_before_init', 'my_tinymce_config');
[/html]

でOKだと思われます。

TinyMCEはキャッシュに設定が残るので、検証が不十分ですが、とりあえず何とかなってます。

ユーザー分岐

稼働中のWordPressサイトのメンテナンスに重宝するコード

テンプレートを少しい修正したいときに本番環境で確認しちゃえ!って時に。
エラー出しちゃうと元も子もないですが・・・

[php]
 //ユーザ分岐
 global $current_user;
 //↓ユーザーIDを確認
 //var_dump(get_currentuserinfo());
 if("2" ==  $current_user->ID):
//これで ユーザーID 2 がログインしたときのみ表示されます。
endif;
//ユーザー分岐
[/php]

 

展海峰のヤギさんたちは、夜は近くにある小屋に帰っているんですね。少し安心しました。

 

CMS Press で パーマリンク設定 をデフォルト で使う

現在、入院中のお客様のiMac.どうもどこかがおかしい。

保証期間も過ぎていたので、HD交換などしてみるもののどうもお手上げです。

佐世保では修理に出すだけでも結構な金額がかかるので、ダメ元でよければ修理をお受けしています。HDが不調になると言うことは、HD本体に原因がある場合はいいのですが、本当の原因は、電源などにあったりする場合も多いので、通常は正規の修理をお薦めします。(まぁ修理に出してHDのデータが戻ってこないなら、新しいMacを買った方が・・・)

カメラのキタムラがアップル製品の正規サービスプロバイダになるという話もあります。「最終的には各県1店舗以上」と言うことですが、長崎県では、是非佐世保のお店もお願いします!

 

 

で、WordPressネタを

  

最近定着してきた CustomPostType

機能的に便利なのですが、標準で管理画面で組み込まれていないために、まだまだ使いにくい。

そこで、プラグインのお世話になるのですが、バグが多かったり、不十分だったりと(;_;)

数ある中で一番使いやすかったのが『CMS Press』と『Custom Taxonomy Order』の組み合わせ。

これに『Custom Field Template』を使えば、WordPressが企業向けHPに変身!

で 『CMS Press』でパーマリンク設定 をデフォルト で使うには

Permalink Structureの設定

■Content Type Identifier → URLに表示されるpost type(任意の文字列)

■Permalink Structure → ?post_type=%identifier%&p=%post_id%

とすると良い。

 

またまた、一般受けしないネタですいません。

Contact Form7の返信メールを条件分岐

 

タケノコの季節です。
我が家のタケノコ。欲しい方はご連絡くださいませ。
(最近デジカメの調子が悪く、ピントが合わないんですよねぇ〜。
日本語環境でも安心して使用できるお問い合わせフォームのプラグインといえば、
Contact Form 7
ですが、これをちょっとカスタマイズ。
チェックボックスの選択内容によって送信メール内容を変えてみました。
「支払方法」といったチェックボックスを作って、
銀行振込を選択した場合のみ口座番号の入ったメールを送るとか、
「ご利用回数」といったチェックボックスを作って、
初めての方には、詳しい説明を送るとか、
少しスマートな対応が可能になります。
まずは、Contact Form 7の管理画面で必要なチェックボックスを作成。
このとき、排他的で作成しないとあとの取扱が面倒ですね。
今回は、checkbok で電話かメールを
 
[html]
[checkbox* checkbox-123 exclusive "電話" "メール"]
[/html]
送信されるメール欄には、
●checkbox-123の選択内容の表示欄
[html]
[checkbox-123]
[/html]
●checkbox-123の選択内容によって変わる内容を表示する欄
[html][_checkbox-123][/html]
ご利用中のthemeのfunction.phpに以下の内容を追加
[php]
//cf7でアウトプット分岐
add_filter('wpcf7_special_mail_tags', 'my_special_mail_tags',10,2);
function my_special_mail_tags($output, $name){
 $name = preg_replace( '/^wpcf7\./', '_', $name );
 if('_checkbox-123' == $name ){
  $a = '電話';
  $b = 'メール';
  $name = 'checkbox-123';
   if ($_POST[$name] == $a){
     $output .= '電話の時の案内文';
   }elseif($_POST[$name] == $b){
     $output .= 'こっちは電話の時の'."\n";
     $output .= '案内文2行目';
   }
    return $output;
 }
}
[/php]
これで、[checkbox-123]の選択項目が “電話” なら

[_checkbox-123]に$aの内容が表示されます。

回りくどいけど、汎用性はあります。

 

ちなみに、1行程度の文章なら、パイプ処理を使う事も可能です。

Contact Form 7オフィシャルサイト:パイプを使って送信先を選択可能に

例:[checkbox* checkbox-123 exclusive “電話|電話の方への案内” “メール|メールの方への案内”]


HOME