2014年11月23日日曜日

CPIサーバにAkeebaのバックアップデータを移築する場合の注意点

これは今後のメモ。

Joomla1.5で開発したサイトをCPIのサーバに移築する際に幾つかの問題があったのでメモしておきます。

1.サーバ上のPHPのバージョン設定。


CPIはデフォルトではPHPが使えないので、.htaccessに設定を書き込んでトップディレクトリにアップロードしておく必要があります。

AddHandler x-httpd-php536 .php
suPHP_ConfigPath /home/自分のID/html/
<FilesMatch "^(\.htaccess|\.htpasswd|php\.ini|.*\.sql|.*\.log|.*\.cron|.*\.inc|.*\.phps|.*\.yml)$">
  Deny from all
</FilesMatch>
Options +SymLinksIfOwnerMatch
上記がその設定

2.DBの設定


これは基本的には通常の発行で構いません。

3.Akeeba Kickstartによる復旧


実はこれが問題・・・解凍までは問題ないのですが、いざインストールを始めようとすると・・・PHPのバージョンをまともに認識してくれなくて先に進めない。

<?php phpinfo(); ?>と入れたPHPのバージョンを確認するファイルではちゃんと 5.3.6なのにAkeeba上では、Ver4として認識。

バックアップしているのがAkeebaの3.2.7 だったとおもいますが、解凍した際には、インストーラーも同じバージョンで動きます。そこで、最新のVer4で圧縮されたデータからインストーラーのみを抜き出して入れ替えたらどうなるかテストしてみましたが、当然の如くエラーで動きません。

こうなると、Akeebaでのクローンは難しい。

3.DBの再構築


仕方なく、ここで、元のDBをphpMyAdmin経由でダウンロード(SQL Data)それを新規のCPIのDBにインポート。エラー表示もでたが、データ自体はインポートされている事を確認。

4.Joomla側の設定


configuration.phpに於いてDBサーバ、DB名、ユーザ名、パスワードを設定するが・・接続せず・・どうやらDBサーバアドレスの設定に問題がある模様。Akeenba で解凍されたファイル(移築元も同じCPI)では localhost と成っていたところを IPで

127.0.0.1

と設定しなおしたら接続完了。

2014年11月17日月曜日

Joomla2.5での開発にてサイトをオープンさせました。

Joomla2.5での開発にてサイトをオープンさせました。今回はL.THWMAのテンプレを元に組みましたがFramework: Helix IIが優秀で、テンプレ内でモジュールポジションを自由に組み合わせたり、デバイスの条件に合せてmoduleの表示非表示を設定可能でした。これはなかなか便利です。
公開したサイトは以下のURLまだ未完成な部分も多いです。

http://www.the-makers.com/

FBのOGP設定しなきゃ。

2014年8月11日月曜日

Joomla3.0のフォーム作成

現在、初めてJoomlaのVer,3で仕事としてサイトを構築中です。やっと使いたいエクステンションがVer,3でも出揃ったために今後少しずつ増やしてもいいかなとは思っていますが、3.5の安定版がでないとちょっと不安です。
また、フォーム関連のいいエクステンションがなかったので、新規で BreezingForms を導入することにしました。

問題は日本語化されていない事ですが、ここは2日ほどかけて日本語ファイルを作りました。まだ70%程度の仕上がり。
エクステンションの日本語化は、その機能自体を理解できてないと適正な単語を選べないのが難しいですね。今回も機能がわからない状態で日本語化したので、誤訳がかなりあります。
ただ機能的には非常に多機能。チェック機能等をスクリプトで作って埋め込んだりできるので、エンジニアに取っては便利でしょう。
もちろんレスポンシブにも対応していて、mobileでアクセスすると、自動的にフォームの部分が別ページとして最適化されます。まだ、十分には理解できていない機能も多く、これから解析と制作平行して行います。
基本的なフォームは作れますが、細かい部分はまだまだわかりません。

2014年6月7日土曜日

Joomla2.5 ブログ表示の日付から曜日の表示を削除したい

ブログ表示で、記事の上に出てくる日付に曜日が含まれますが、ちょっとウザイ感じがして表示を消そうと思いました。基本的には日本語ファイルの ja-JP.ini の中からその設定を変更すると出来るはずですので、実験した結果成功。


DATE_FORMAT_LC="l, d F Y"
DATE_FORMAT_LC1="l, d F Y"
DATE_FORMAT_LC2="l, d F Y H:i"
DATE_FORMAT_LC3="d F Y"
DATE_FORMAT_LC4="Y-m-d"
DATE_FORMAT_JS1="y-m-d"
この部分を下記の様に書き換えます

DATE_FORMAT_LC="l, d F Y"
DATE_FORMAT_LC1="l, d F Y"
DATE_FORMAT_LC2="l, d F Y"
DATE_FORMAT_LC3="d F Y"
DATE_FORMAT_LC4="Y-m-d"
DATE_FORMAT_JS1="y-m-d"
ファイルの場所は、

/language/ja-JP/

上記にあります。

ただし、バージョンアップなどで、日本語ファイルが上書きされてしまったら、もとに戻りますのでご注意下さい。

2014年5月21日水曜日

Joomla 2.5及び3.0 無料テンプレート配布

先に実験的に配布していたJoomla2.5及び3.0のテンプレートこちらでもご紹介します。

制作しは

http://www.artisteer.com/

こちらのソフトで作ってみました。無料の上にレスポンシブテンプレートです。

deltaworks9_blue

上記からダウンロードしてご利用ください。

sample_temp01

改造や、商用利用も問題ありませんが、あくまでもテスト配布ですのでサポートは出来ません。

設置に関しては、以下の点をご確認下さい。

1.中央左のサイトタイトル設定について

上記のサムネイルで

これはテストサイト
Joomlaの開発用です

と書かれた所はテンプレート設定の所で、入力が可能です。

テンプレート管理から「スタイルの編集」を選んで、Headline、Sloganの部分を書き換えて保存してください。(なをこのエリアを少し改造して透明PNGでロゴマークなどを設置することで、レスポンシブにも対応したロゴ入りレイアウトもできると思います。)

2.右メニューのモジュール設定

インストールしただけでは右メニュのCSSがちゃんと機能しません。右メニューをモジュールで配置したあと、「詳細オプション」の「モジュールサフィックス」の欄に

art-vmenu

上記を入力して保存して下さい。これで正常なCSSが適応されます。

こちらのページのほうがわかりやすいかもしれません。

2014年5月20日火曜日

Joomla におけるRSSの管理その1

Joomlaで作られたウェブサイトでは自動的にRSSを生成することが出来ます。

まず、実験として、作ったサイトのトップページのアドレスに ?format=feed&type=rss というのを追加してみましょう。

http://tegoro.org.uk/

というサイトの場合は

http://tegoro.org.uk/?format=feed&type=rss

と入力してみます。(上記のサイトはJoomla1.5ですが、2.5以降も同じです)

そうすると、下記のようなRSSを吐き出してくれます。

<?xml version="1.0" encoding="utf-8"?>
<!-- generator="Joomla! 1.5 - Open Source Content Management" -->
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>テゴロ:広告代理店向け制作OEMマニュアルサイト - マニュアルサイト</title>
<description>広告代理店向けCMSシステムのデザインサンプルサイトです。Jommlaによるシステム化されたシステムの構築を低価格で受注します。</description>
<link>http://tegoro.org.uk/component/content/frontpage.html</link>
<lastBuildDate>Tue, 20 May 2014 05:31:20 +0000</lastBuildDate>
<generator>Joomla! 1.5 - Open Source Content Management</generator>
<language>ja-jp</language>
<item>
<title>JCEエディタによる画像の登録</title>
<link>http://tegoro.org.uk/magyakubiki/63-jce.html</link>
<guid>http://tegoro.org.uk/magyakubiki/63-jce.html</guid>
<description><![CDATA[<script type="text/javascript">
// <![CDATA[
ここで重要なのは新着として吐き出してくれる記事の種類です。

この場合ページトップで実行しましたので、記事全体ではなく、注目記事だけを抽出しています。しかし、

http://tegoro.org.uk/makanri.html

この一覧ページに先の物を追加すると

http://tegoro.org.uk/makanri.html?format=feed&type=rss

となりますが、その場合は、そのページの一覧カテゴリの内容が吐出されています。つまり、ページに依って最適なRSSを吐き出してくれるわけです。ここがブログとの違いと言えるでしょう。

しかし、それでは一般的なRSSを前提にすると少し使いにくいかもしれません。

希望するカテゴリを選んで出力できるようにするためには、それ専用の機能拡張が必要となるでしょう。


2014年5月17日土曜日

PHP5.3の環境でJoomla1.0を動かす為に。

Joomla1.0で運用しているサイトのレンタルサーバ、HETEMLが6月よりPHP5.2以前の運用を停止するとのことで、5.3以上での運用が必要となり相談を受けました。
そこで、設定を変更したら当然、Error吐き出してページ表示出来ません。色々調べてみて、下記のページを参考にコアファイルを改造。Errorは出ますが、PHP.iniにてError非表示にすることで対応しました。
設定を変更したのは以下のファイル
/includes/Cache/Lite.php
/includes/Cache/Lite/Function.php
勿論、早くバージョンアップしてくれというのは基本だけど、出来ない場合もありますからねぇ。下記は上記ページからの引用です。

Some changes need to be made to this file /includes/Cache/Lite.phpAll occurrences of the set_magic_quotes_runtime function need to be replaced by a conditional if statement.for example change this line near line 524:                        set_magic_quotes_runtime(0);  to this:                       // Check if magic_quotes_runtime is active                                                 if(get_magic_quotes_runtime())                                                    {                                                           // Deactivate                                                           set_magic_quotes_runtime(0);                                                     }Some changes need to be made to this file /includes/Cache/Lite/Function.php Line 72:Change this:    function call()    {        $arguments = func_get_args();        $id = serialize($arguments); // Generate a cache idTo this:    function call()    {                $arguments = func_get_args();                $numargs = func_num_args();                for($i=1; $i < $numargs; $i++){                $arguments[$i] = &$arguments[$i];                }        $id = serialize($arguments); // Generate a cache id 

JoomlaをインストールするサーバのPHPのバージョンを調べたい。

先に書いたようにJoomlaをインストールするサーバではPHPのバージョンが重要になります。そこで勿論、サーバ管理者だったら、自分のサーバのPHPのバージョンは分かる場合がほとんどですが、そういった事が分からない場合も出てきます。

例えばクライアントのサーバで、事前にチェックしたい場合などですね。FTPはわかったけどPHPのバージョンわかんねーよ。

その場合は、PHPのバージョンを調べるために、それ用のファイルを用意して対象となるサーバにアップロードしてアクセスすると教えてくれます。

そのためのファイルを作りましたので、下記からダウンロードしてご利用ください。

http://www.and-g.com/joomla/phpinfo.zip

確認手順



  1. 上記のファイルをダウンロードします。
  2. 解凍後現れた phpinfo.php ファイルを対象となるサーバにアップロードします。
  3. そのファイルにブラウザでアクセス内容を確認します。

    サンプル http://www.xxx.com/phpinfo.php
  4. 確認後はファイルを削除してください。

    これはそのまま残しておくとハッカーに情報を与える事になるからです。確認後はファイルを削除したほうがいいですね。

PHPが動いていると下記の様なインフォメーションが表示されます。もし、何も表示されなかったらPHP自体が動いていないということになるでしょう。



上記の場合はPHP 5.3.15で動いているということになりますね。

商用で構築するJoomlaのバージョンについて

Joomlaの場合今日現在で3.3.0というのが最新のバージョンです。

そこで、初めてJoomlaを使う人は当然最新版をインストールするでしょう。しかし、気をつけてくださいね。Joomlaの場合はロングサポート版といわゆるベーター版があって、X.5というバージョンが安定版であり、ロングサポートバージョンです。

ですから、Ver,3のJoomlaはまだ安定版と言うのは出ていません。

よって、今仕事で使うのであればVer,2.5を使うというのが現実的な話になるでしょう。

また、サーバに対しての最低利用条件も違ってきます。

詳しくは下記を御覧ください。当然バージョンが新しいと作動要件も厳しくなります。

http://www.joomla.org/technical-requirements.html

特にPHPに関して、Joomla Ver,3は、PHP 5.3.10以降が最低条件。推奨は5.4です。

こういった知識がないと、自分のサーバでは動かせないという場合が出てきますのでお気をつけ下さいね。


Joomlaを使ったサイト構築のTipsや体験記を書き始めます。

熊本という地においてCMSで仕事しようとすると基本的にはやっぱりWordpressがメジャーですね。でも、私が選んだのはJoomla(ジュームラ)というCMSです。

だって、WordpressはCMSではありませんもの。

Wordpressはブログツールでして、小規模サイトには向いていますが、コーポレーションサイトは不向きだと思うのです。

それに対して私の場合、Joomla1.0からのユーザで、それを専門で仕事してきた事もあり、もっと、CMSの便利さなどを皆さんにも伝えたいなと思っています。

さてさて、どんな記事となるか頑張って充実させてみたいと思います。