Hatena::ブログ(Diary)

ちらうら PHPとCMSとWEBデザインを貪る  RSSフィード

DesignerでもないEnginierでもないProgramerでもない職人目指して奮闘中・・・

2012-04-11

2.11系 フォームにセレクトボックスの項目を追加する

お問い合わせフォームや会員登録フォームなどに、「資料請求」や「アンケート」などを追加したい!

という要望があったので、EC-CUBEのフォームにセレクトボックスを追加してみた手順を自分用にメモ。

あんまり綺麗じゃないので、もっとコンパクトな記述があれば教えていただきたいです_(:3 」∠)_

1.LC_Page_Contactのinit内へセレクトボックスに表示する項目を追加する

    function init() {
        parent::init();
        ・
    ・
    ・
        
         //配列
        $this->arrCheckbox[0] = 'りんご';
        $this->arrCheckbox[1] = 'みかん';
        $this->arrCheckbox[2] = 'すいか';
        $this->arrCheckbox[3] = 'さくらんぼ';


2.パラメーターの準備をする

    /**
     * お問い合わせ入力時のパラメーター情報の初期化を行う.
     *
     * @param SC_FormParam $objFormParam SC_FormParam インスタンス
     * @return void
     */
    function lfInitParam(&$objFormParam) {

        $objFormParam->addParam("チェックボックス", 'check01', INT_LEN, 'KVa', array("MAX_LENGTH_CHECK"));


3.テンプレート内の表示させたいところへ以下のように記述する


<!--{assign var=key value="check01"}-->
<!--{html_checkboxes name="$key" selected=$arrForm.check01 options=$arrCheckbox separator='&nbsp;&nbsp;' assign="checkboxes"}-->
<!--{section name=checkbox loop=$checkboxes}-->
<!--{$checkboxes[checkbox]}-->
<!--{/section}-->

ちなみにseparatorが、要素同士の間の区切り方の指定です。

assignプロパティを指定してあるので、

セレクトボックスの要素が一旦assignで指定した変数配列として格納されます。

なので、section内でif文をかけば、n個ごとに改行を入れたり、

4番目と6番目だけ改行する、なんていうことも出来ます。


4.確認画面へ追加する


<!--{foreach from=$arrForm.check01.value item=check}-->
<!--{$arrCheckbox[$check]}-->
<input type="hidden" name="check01[]" value="<!--{$check}-->" />
<!--{/foreach}-->


5.メールテンプレートへ追加する


<!--{if $check== 0}-->・りんご 
<!--{elseif $check== 1}-->・みかん
<!--{elseif $check== 2}-->・すいか
<!--{elseif $check== 3}-->・さくらんぼ<!--{/if}-->

ここだけアナログですね・・・(苦笑)




以上でチェックボックスが設置&メールテンプレートへ反映されると思います。

ただ、確認画面で「戻る」を押した時に、

元の入力画面で入力した情報が再度引き継がれるようにする処理は

含まれていないので、別途つけてあげてください^^;

2011-10-27

wordpressのContactForm7をSSL対応する

wordpressにSSLをつけたので、メモ。


1.SSL化のためにプラグインダウンロード

任意のページをSSL化させるために、「WordPress HTTPS」プラグインをダウンロードします。

(プラグインから検索するか、下記よりダウンロードして下さい)

http://wordpress.org/extend/plugins/wordpress-https/


2.WordPress HTTPSの設定を変える

f:id:AI-615:20111028092004j:image

ご利用のサーバーに併せて適宜変えてください。

・Force SSL Exclusively

ページ編集の画面に、「Force SSL」というチェックボックス

公開ボタンの側に新しく追加されています。

ここにチェックが入ったページだけがSSL化します。

今回は、お問い合わせフォームだけをSSL化したいので、

この項目にチェックを入れます。


・Shared SSL

共有SSLのアドレスを設定します。

また、Force SSLを使用していると、

チェックの入っていないページがHTTPリダイレクトするようになります。



3.ページテンプレートの複製

page.phpテンプレートを複製して、別名でアップロードします。

テンプレートの最初に

<?php
/*
Template Name: ページテンプレート名
*/
?>

とすることで、ページ編集画面に複製したテンプレート名が選択できるようになります。

あとは、ヘッダーやフッターなど、

共通で使用している部分のリンクなどが崩れないように、

httpsからもアクセスできる内容に修正しておきます。



4.フォームページをSSLへ変更

お問い合わせページの「Force SSL」のチェックを入れます。

ページテンプレートも先ほど作成したSSL用のテンプレートに変更します。





これでSSL化作業は終わりです。

おそらく、このやり方で共用も専用もいけるのでは・・・と思うのですが、

あちこちで試したわけではないのであしからず(´`)

2011-09-21 [EC-CUBE]2.11.1 DNSを切替える

2.11.1 DNSを切替える

2.11.Xへ更新したEC-CUBEで作ったサイトをいざDNS切替!

・・・と思ったがしかし、2.4系と同様の方法では切替えられないんですよねー(・ω・`)


data/config/config.php    内の

    define ('HTTP_URL', 'http://www.hogehoge.co.jp/');
    define ('HTTPS_URL', 'http://www.hogehoge.co.jp/');
    define ('ROOT_URLPATH', '/');

あたりのパスを適宜書き換える

あとは、自分の場合テスト環境ではdataフォルダが別階層にある状態で運用していたので、

ドメイン直下でも機能するように、dataフォルダの階層も変更しないといけません。

html/define.php      内の

/** HTMLディレクトリからのDATAディレクトリの相対パス */
define("HTML2DATA_DIR", "../data/");

を

/** HTMLディレクトリからのDATAディレクトリの相対パス */
define("HTML2DATA_DIR", "/data/");

に書き換えて、dataフォルダをhtmlフォルダの直下へ移動します


これで、無事移管完了です。

にしても、毎度毎度移管はひやひやですね・・・

2011-07-20

使えるプラグインまとめ

wordpressインストールするたびに、

「あれ、あのプラグインなんだっけ?」

と、ggることを繰り返しているのもなんだかなーと思うので、メモ。


Adminimize

管理画面左側の、サイドメニューをカスタマイズするプラグイン。

権限によって見せたくない機能がある場合、

たとえば、お客さんに納品するようなwordpressとかにいいですよね。


admin menu editor

ダッシュボードの”投稿”や”メディア”などの項目名を変更するプラグイン。

どれもブログ的な表現の項目名を、

いかにもCMSっぽく”ページ作成”とか”ファイルをアップロードする”とか、

そういう名前に変更できちゃいます。


All in One SEO pack

wordpress向けのSEOプラグインはたくさんありますが、

自分はこれが一番使いやすかったです。

英語表記なのでちょっと分かりづらいですが、

タイトル・ディスクリプションなどをカテゴリやページ名などに応じて

自動的に書き換えてくれます。


Contact Form 7

wordpressにフォームを簡単に設置できるプラグインです。

入力項目の設定や、送信時のメッセージなども細かく設定できます。

BCCもちゃんと設定できるので、優秀なプラグインです。


Easy Admin Color Schemes

管理画面のテーマカラーを変更するプラグインです。

標準ではグレーとブルーしかありませんが、

その他の色を設定できるので、複数のブログを連動させたり、

管理者が複数いるような場合にユーザビリティを向上できますね。


Google XML Sitemaps

XMLファイルを自動で生成してくれるプラグインです。

出力したいページ構成などもコントロールできます。


Nice Trailingslashit

生成されたURLの末尾に必ず「/」を追加するプラグインです。

wordpressでは、カテゴリやページの末尾に「/」がついていません。

このプラグインは、「.html」以外の「/」がついていないパーマリンクに対して、

「/」を追加してくれます。

これで検索エンジン対策もばっちりです(・ω・)


PS Auto Sitemap

サイトマップページを出力できるプラグイン。

出力内容も細かくカスタマイズできるので、

「リンクページは出したくない」だとか

「一括出力するとサイトマップページまでサイトマップに出ちゃう」だとか

そういうことに悩む必要がなくなります。


wp-copyright

copyrightを自動的に生成してくれるプラグイン。

折角のCMSなんで、こういうところも自動化したいですよね!

こちらはwordpressからはダウンロードできないので、

FTPで直接アップロードしてくださいね。



今のところ、この辺が定番かなー。

新しいバージョンになってからちっとも触ってないから、

今はもっといいプラグインもあるかもしれないけど。

オススメのプラグインとかありましたら教えてください!><

2011-07-04

Firefox5.0 でタブを待機させる(Firefox5非対応アドオンのBarTabを使えるようにする)

前回、Firefox4.0.1で「対応してないじゃん><」

と思って急遽やった方法を、今回もやりましたw


・開発版のバージョンで凌ぐ

https://addons.mozilla.org/ja/firefox/addon/bartab/versions/

「バージョン 2.1b2」が、現在

対応バージョン:Firefox 3.5 - 6.*

となっているので、一応、6.*まで?は、がんばれるかな・・・?w


他にも、xpi自体のバージョン制限を書き換えて、誤魔化したり、

そもそもbarTabなんか使わなくてもabout:configでできんじゃーん!

って人もいるので、別になんだっていいんですけれども、ね。


使ってるアドオンが全部対応になるまで、約1ヶ月かかったか・・・

次のバージョンアップが来るほうが早そうだな、本当困る:(


ちょっとでもお役に立てばいいな。