月別アーカイブ: 2013年4月

PHP5.2より下のバージョンでjson_encode

毎度のWebARENA SuiteXさんですが・・・
PHP5.3(今回に限っては5.2以上)で問題なければこんな苦労はしないのだけど、
Concrete5でアドオン入れたら、json_encodeでエラー吐かれたんで
対処方法調べて見っけたのでメモ。
json_encodeがPHP5.2以降じゃないと使えないという罠。

下記からJSON.phpをダウンロード。
http://pear.php.net/package/Services_JSON/

以下のrequire_onceに合わせて配置。

// json_encode()関数が存在しないなら
if (!function_exists(‘json_encode’)) {
// JSON.phpを読み込んで
require_once ‘JSON.php’;
// json_encode()関数を定義する
function json_encode($value) {
$s = new Services_JSON();
return $s->encodeUnsafe($value);
}
// json_decode()関数を定義する
function json_decode($json, $assoc = false) {
$s = new Services_JSON($assoc ? SERVICES_JSON_LOOSE_TYPE : 0);
return $s->decode($json);
}
}
// 以降、json_encode(), json_decode() が使用可能
else { }

取り敢えずエラーが出る該当箇所にぶっこんで出来るようになったからOK。

なんとなくでelse作っちまったけど要らんかったかね・・・
まぁ、両対応ってことでいいか。

drupal6.28インストール

Xserverにインストール
php.iniの設定だけで特に問題なし。
drupalで用意された.htaccessは上げてない。
PHPのバージョンは5.4.13

■ php.iniの設定
前回Joomla!入れたときの設定そのまま。って事で以下(***)のように変わってる。
***
output_buffering = 4096
↓↓↓↓↓↓
output_buffering = Off

mbstring.language = Japanese
↓↓↓↓↓↓
mbstring.language = neutral
***

インストール中にエラーが出るのでそれに付け足して設定へ変更。

mbstring.http_input = auto
↓↓↓↓↓↓
mbstring.http_input = pass

mbstring.http_output = SJIS
↓↓↓↓↓↓
mbstring.http_output = pass

データベースの設定で高度なオプションを開いて
データベースサーバのホスト名を入力。

コレで無事インストール完了。

もしおかしいところがあったらphp.iniを以下のように設定してみよう。

mbstring.language = neutral
mbstring.http_input = pass
mbstring.http_output = pass
mbstring.encoding_translation = off
mbstring.func_overload = 0
mbstring.internal_encoding = UTF-8

Joomla!3.0.3インストール

Xserverにインストール
php.iniの設定だけで特に問題なし。
Joomla!で用意された.htaccessは上げてない。
PHPのバージョンは5.4.13

■ php.iniの設定

output_buffering = 4096
↓↓↓↓↓↓
output_buffering = Off

mbstring.language = Japanese
↓↓↓↓↓↓
mbstring.language = neutral

これで終わり。
後は順を追ってインストールするだけ。

さて、Joomla!どうやって使っていくか研究するか。

一応3.5まではベータ的なものらしいので2.5.9も入れた。
上記のままで特に問題なくインストール完了。
何も考える事はなさそう。

Concrete5でちょっとつまづいた

ページタイプの追加でつまづいたからメモ。

追加をしてハンドルとファイル名を合わせても反映されずに
default.phpを読みに行ってしまう事例が発生。

色々と試して解決した方法。

ページタイプを追加した状態でテーマを削除して再インストール。
再インストールしてからもう一度テーマを有効にすると追加が反映される。

DBの読み込みがどっかでおかしくなっているのかな・・・
まぁなんとか回避できたのでとりあえず良しとする。

とりあえずCMSまとめ

ちょいちょいとCMS触ってきてとりあえずまとめ。
結局は自分にとってどれが使いやすいかって事だけで
コレが最強一番!って言うもんでもないかなと・・・

個人的には、インストールのしやすさ、管理画面のわかりやすさ、
オリジナルテンプレートの作りやすさが決め手になるかな。
後は素人でも扱いやすい、素人に説明しやすい、わかりやすいという点。

■ ECサイトならEC CUBE
比較対照はZenCartとかosCommerce、Magentoかな。
導入実績が多いので、何かあった時にすぐ調べる事が出来るのが利点。
管理画面もわかりやすいし、カスタマイズもそこまで苦労しない。
Ver.2.4時代はメモリの使い方とか?で動作が重い部分もあったけど
今のVer.(2.12.3)ではそこまで感じない。
規格の部分で悩まされる事もあるけどまぁ何とかやれそうだし
デザインを組むのも特に問題は感じないってところかな。
あまり大掛かりなシステムじゃないから誰にでも使い勝手がいい反面、
機能に物足りなさを感じる時もあるけどまぁ許容範囲。
携帯アプリ作って連動させることを考え中。

■ ブログならWordpress
MTと比べてしまう感じになるけど、個人的にはWPの方が馴染めた。
管理画面の見た目や扱いやすさがよかった。
MTも多いと思うけど、プラグインも豊富だし紹介しているサイトも多い。
自分なりのテンプレートの土台を作ってしまえばいろんなサイトに
使いまわせていけるのではないかなと思う。

■ サイト構築ならConcrete5
比較対照は、ImpressPagesCMS、SOY CMSとか。
「まともに使おうとすると問題がある」と書いてあるサイトがあったけど
どこに問題があるのかわからないw

使っていて変に思ったのはDBに登録する順序がおかしくなった事があった。
IDは大きい数字のに小さい数字のIDより前に登録されたり・・・
登録自体も大きい数字の方が後。
ページタイプの属性で発生した事だけど直らないというか思った通りに
いってくれないからDB直接いじって順番変えた。

操作性についてわかり易く、素人にでも十分扱える。
その上、レイアウトの自由度が高いところがいいところかなと。
オリジナルテンプレートも作りやすいし、このブロックだけ他と変えたいといった
細かい事にも対応していける。

ブログのように扱いたいとなるとちょっとというかかなり扱いにくいので
そういった用途を求めている人にはお勧め出来ないけど、
更新しやすいサイト、簡単にページを増やせるサイトが欲しい人にはいいかなと思う。

■ 試しきれなかった・・・
ブログ及びサイト構築の両面で気になるのがJoomla!。
会員制サイトの構築であったり、権限だったり、日本語プロジェクトもあることで
よさそうなんだけど手を付けられていない。
WPともConcrete5とも違うコンセプトになりそうだから上記3つに加えて
Joomla!の4つが自分の中では使っていくものになりそうだなと。
それ以上は余程いいものが出ない限りはもう覚え切れませぬ・・・w

■ 最後に・・・
携帯に対応させるのが面倒・・・w
標準でしっかりと対応してくれればいいんだけどなぁ・・・
EC CUBEは標準で対応しているからデザインだけ作れば何とかなる。
WPの携帯が結構微妙・・・プラグインも使ってみたけどなんかねぇ・・・
Concrete5は携帯用にテンプレート作って管理画面から携帯用テーマを選べばいけるみたい。

スマートフォンが普及してPCサイト普通に見ることが出来るんだから
特に対応する必要ないじゃないかと思ってしまうんだけどね・・・

ImpressPagesCMSちょいと触ってみた

やっとって感じだけどImpressPagesCMSを触ってみた。
ImpressPagesCMSはある程度日本語にも対応していて導入に対するアレルギーはそこまで無い。
使い方とかを紹介しているサイトが少ないのが、何か不具合があったり
わからないことを知りたい時には不便かな。

始めのイメージとしては、ドラッグ&ドロップで
サイトを構築、更新していける点がわかりやすくて魅力だと思った。

インストールしたのはImpressPages CMS 2.6。
日本語表示にするための言語ファイルもダウンロードした。
【ImpressPages CMS日本語】http://impresspages-cms.info/
サーバーはXserverに。PHPのバージョンを5.3.3にする。
DBはMySQL。

インストールだけなら標準で日本語に対応している。
始めに日本語を選ぶだけ。
チェックの部分でひとつ「いいえ」があったけど無視してやったが何の問題も無く終了。
何が引っかかったかは忘れた。

導入してわかった事・・・
多国籍言語のサイトを構築するのには向いている。
インストールした状態から既にそうなっている。
だけどコレが逆にうざいw
以下のような説明があったのでとりあえず設定しておいた。

*************
URL が長くなるのですが……

ImpressPages の仕様上
(多国語・複数のメニュー表示のため)

www.ipsites.org/JA/Top/pages/

という感じのアドレスになります。

そのうち JA の部分は
開発 – モジュール設定 より
基本 – 言語 の中にある
多言語サイト の値からチェックを外すと
非表示にする事ができます。

また、Top・Left は 基本 – SEO より
変更する事が可能です。日本語も可能です。
*************

このページ構成を理解しなければならない。
アドレスが変になるんだよね・・・
Homeなのにその下の階層を表示する感じになってしまったりとか・・・

管理画面と一般画面が分かれていて、Concrete5を触った後だと
微妙にだが面倒に感じる。

始めに思ったドラッグ&ドロップでの操作性についてはいいと思った。
予め用意されているドラッグ&ドロップ用のテンプレートもいいと思う。
だけど、配置する場所のレイアウトの柔軟性に欠けるかなと。
深く触ったわけじゃないから実際柔軟に出来るのかもしれないが、
ぱっと見で出来そうではない。それだけでもちょっとマイナス。

例えば、2カラムのサイトレイアウトで左にメニュー、右にメインコンテンツとした時、
メインコンテンツの横幅いっぱいの状態のレイアウトしか作れない。
メインカラムをある部分は2分割や3分割にしたいと思った時に出来ない。
HTMLで直接書けば問題ないだろうがこのCMSを使うと考えると本末転倒。
用意されているものである程度はまかなえる気もするけど完璧じゃない。

テーマをいじる事である程度は対応できると思うけど、
表示位置で納得できない時が出そうだ。
Concrete5の場合、レイアウト追加で対応できるので同じように出来ればなと。

オリジナルテーマについては、特に難しいところはなさそう。

管理項目については、結構細かく指定できるみたい。
まだあまり理解していない。

手始めって事でこんくらいかな。