新着情報

全て閉じる▲
2016/05/20 チラシや広告からのアクセスを分析する
実店舗と連動している場合、ポスターやチラシ、雑誌広告などに QRコードを貼ってスマホから集客することが考えられますが、
そのままでは広告やチラシにどれぐらい効果があったのか良くわかりません。

# 単純にスマホからのアクセスはユーザーエージェントで判断できますが、
どこからアクセスしたかを分析することで、どこにチラシやポスターを置けば効果的かが判断できます。

やり方は、先ず Googleアナリティクスのコードを埋め込んだチラシやパンフから呼び出す専用のページを新規作成します。

例えば、http://ec3.webcrow.jp/html/user_data/flyer なら、
[コンテンツ管理] → [ページ管理] →   で、名称:チラシ  / URL: flyer / ファイル名 flyer などで追加すればOK。
そのページは何もしないでホームページのトップにジャンプさせてやります。
<script>
location.href="サイトのトップページのアドレス";
</script>
このページの URL を QRコード化して広告などに印刷します。
チラシからアクセスされた場合は、この専用ページを経由するので、Googleアナリティクスで分析ができるようになります。

もっと細かく地域や場所など、効果を測定したいセグメントで専用ページを変えてやれば、細かい SEO 対策も可能です。
個別ページ
2016/05/18 このサイトに帳票出力プラグインを入れた方法
PDFで帳票を出力したいと思って 帳票出力プラグイン を入れようとしたけれど・・・

先ず、購入済みプラグインからインストールしようと思ってもだめ。
「このページは応答しません」となってしまう。

それではとMyページの購入履歴からダウンロードして、独自プラグインとして入れようとしてもだめ。
しばらく待たされた後、アップロード前の状態に戻ってしまって正しくインストールできない。

そこで試した方法。
先ず、一旦 プラグインの tar.gz を展開すると vendor ディレクトリが異様に大きい。
ここに PDF を作るためのライブラリが入っているのが、
プラグイン登録時には使わないと思うので別の場所に移動しておく。

vendor がない状態でもう一度 tar.gz に圧縮する。

この状態で独自プラグインからアップロードする。
最後に Internal Server Error になる(このサイトの MySQL が古いため)が
プラグイン自体は登録できていた。

最後に vendor ディレクトリを ftp でアップロード。

この様に vendor ディレクトリ抜きの tar.gz を作って、後からアップロードするようにすれば
購入済みプラグインからもインストールできるんじゃないかなあ。

でも、インストーラーががっつり vendor ディレクトリをチェックしていなくて良かった。

その後の顛末
ちょっと請求書が必要になったので帳票をカスタマイズしてみました。

・先ず、宛先に会社名が入っていなかったので会社名を追加。
・このサイトは商取引はしないので、「特定商取引法に基づく表記」 を載せていない。
 なので、住所などが引っ張ってこれないので、直接埋め込み。
・振込先をコメントに記載

これはプログラムの知識がないとカスタマイズできないなあ。
でも、一度カスタマイズすればずっと使えるし、宛先の部分を窓付き封筒と
位置合わせすれば、宛名を書く必要もなくなりますね。
個別ページ
2016/05/17 [推奨] mcrypt 拡張モジュールが有効になっていません。
インストールの時に 「[推奨] mcrypt 拡張モジュールが有効になっていません。」 と表示された場合。
ちなみに CentOS7
予め epel のリポジトリを登録しておく。
#yum install epel-release
その後、/etc/yum.repos.d/epel.repo を編集して enabled=1 を enable=0 にしておく。
yum install --enablerepo=epel php-mcrypt
systemctl restart httpd
これで mcrypt が有効になる。

同じように APC モジュールが有効になっていない場合は
yum -y --enablerepo=epel install php-pecl-apc-devel
systemctl restart httpd
でOK。
個別ページ
2016/05/15 このサイトの新着情報
このサイトの新着情報は標準インストールのものとかなり様子が違うと思いますが、相当カスタマイズしています。

当初は標準の新着情報のコントローラとブロックに手を加えていましたが、
標準コントローラへのルートをフックして、プラグイン内のコントローラに置き換えられたので
標準部分はいじらずに、プラグイン形式で実装しなおしました。
新着情報(エクステンド)プラグインとでもいう感じでしょうか。

プラグイン形式なので無効にするとインストール直後の新着情報に戻すことができます。
また標準の新着情報ブロックは使用せず、プラグイン内部の独自テンプレートを使うようになっています。

まあ、そんなに大層なことはやっていないんですけれど・・・。
最初に記事を伸張しておくのと、改ページ処理ぐらいです。

フロントページはまあ見れるようになってきました。
一部、$_GET を使わざろう得ない部分があるため EC-CUBE3 のプラグインコーディング規約から外れてしまっています。

プラグイン内で閉じるのでいろいろ試しやすいですね。なので単体ページなんていうのも作ってみました。
こんな感じ

まだまだ改善の余地はありますが、どうしても使いたいという人がいらっしゃったら個別にご連絡下さい。
個別ページ
2016/05/12 自前のテンプレートにヘッダーとフッターを表示させるには!?
プラグイン内の自前のページにヘッダー・フッターを表示するには
先ず twig 内に {% extends 'default_frame.twig' %} を記述する。
でも、これだけでは表示されない罠がある。
dtb_page_layout にも対応するレコードを記述しなければならない。

詳しい資料が見つからないのでとりあえずまとめておく

dtb_page_layout
カラム 備考
page_id 指定しなけばシーケンシャル値が振られる。
device_type_id 10 10はPC、1:モバイル、2:スマホ、99:管理画面
日本語ページ名 これが、ブラウザタブにサイト名と共に表示される。
url plugin_ExNews bind 時に指定した値?
file_name News twig ファイル名
edit_flg 0 ユーザが作成した場合は 0 を指定。
0:USER / 1:PREVIEW / 2:DEFAULT
author NULLで良い
description
keyword
update_url
create_date timestamp 作成日を入力
update_date timestamp 更新日を入力
meta_robots NULL とか ”noindex” とか。多分メタタグに反映される。
$app->match('/News', 'Plugin\ExNews\Controller\ExNewsController::news')->bind('plugin_ExNews');

プラグインを有効にするときレコードがなければ、レコードを作成。
プラグイン削除時はこのレコードも削除した方が良さそう。

でも、実際はもう少し複雑。このレコードの内容が [コンテンツ管理] > [ページ管理] に表示されるんだけれど
edit_flg=USER にした時に、URL は http://ec3.webcrow.jp/html/user_data/、
ファイル名は /home/ec3/ec3.webcrow.jp/public_html/html/user_data/ までが固定になってしまう。

実際にはプラグインの下を参照するので、このままでは整合性が取れなくなる。
整合性をとるためには、インストール時に user_data へファイルをコピーするなどの処理が必要。

うーむ。
個別ページ
|◀ 6 7 9 10 ▶|