Blog !JoomlaComment 2.40 JP
!JoomlaComment 2.40 JP コメントコンポーネントです。
Joomler!.netで現在使用しています。(肝心のコメントがありませんが・・)
Developer: Frank Hliva
いろいろ探していたのですがシンプルで設定も簡単ですし使いやすいと思います。
日本語化にあたって少しだけ修正しています。(ほんの1,2行です)
Ajaxを使用したコメントシステムです。
詳細な特徴はJoomla!のExtensionページをご覧下さい。
おかしい訳はご指摘を・・・。
XML Editor
XML エディターについて
Joomla!のエクステンション制作に必ず必要な物がxmlファイルの作成です。普段は普通のテキストエディタを使っているのですが、時々エクステンションインストール時にエラーを吐いたり、インストールできなかったりします。それは大抵、そのXMLファイルのエラーが多いです。今回ご紹介するのはMicrosoftが無料で提供しているXML Notepad 2007です。下記のリンクからダウンロードできます。
このエディタの特徴はツリー表示であることですが、作成したXMLファイルが正しくないとちゃんとエラー表示してくれます。それだけでずいぶん助かります。Joomla!のインストーラーはXMLファイルのエラーまで表示してくれませんからずいぶんそれで時間を費やすことになります。ですからXMLファイルはこれで作成するかアーカイブする前にこれで一度読み込んで正しいXML構文であるかチェックしてからアーカイブすることにしています。
ただ・・・難点はUTF-8はどうもBOM付になるようです。Joomla!のインストーラーはBOM付だとエラーが出たりするようですので、保存後は別のエディタでBOM無しに変更しています。それとこれは英語版しかありません。
Yahoo! Pipesを実際に使ってみる
Yahoo! Pipesで実際に英語RSSを日本語に翻訳するWebサービスを作成してみます。
- 左のUser inputsからURL Inputをドラッグ

Name:クエリになるので簡潔に。
Prompt:Pipesのページを開いたときにここの文言が表示される。
(ユーザーへの入力を促すタイトル)
Position:たぶんクエリの順番かも?
(入力しなくても大丈夫)
Default:既に入力済の値を設定するかどうか
(URLならいらないから空白)
Debug:デバッグ出力のための実際に使えるRSSリンクを入力。 - また左からSourcesのFetch Feedをドラッグ
はじめのURL Inputの下の○からパイプをドラッグしてInput Box右の小さな○につなぐ - DeprecatedのBabelFishをドラッグ
翻訳したい言語に設定(今回はEnglish To Japanese)し、2.のFetch Feed下部の○とBabel Fish上部の○をパイプでつなぐ - OperatorsからRenameをドラッグ
ここでデータをマッピングします。
item:y:title:これはたぶん翻訳していない元のタイトル。(事実そうなってる)
item:link:ここにはリンクが入っていますがCopy Asを選択し、適当な名前でコピーします。
これはただのフラグとして使用するだけなのでマッピングできるものならどれでもいいと思いますが・・・。
このフラグを使ってGoogleのWEB翻訳リンクとするか、しないかを分岐します。
そしてパイプで接続。 - OperatorsからRegexをドラッグ
これは正規表現で置き換えをしてくれるモジュールです。
左のものを真ん中の条件で右と置き換えるってな具合に。
今回は4つのルールを作成しています。 -
- item.translatelink -> ^(.*)$ ->
- item.translatelink -> ^1$ -> グーグルのWEB翻訳してくれるURL
- item.translatelink -> ^0$ -> なにもなし
- item.link ->^(.*)$ -> ${translatelink}$1
それからパイプを接続。今回は最後の出力(Pipe Output)にも接続しましょう。
次はUser Inputから Text Inputをドラッグして5のRegexの隣くらいに置く
Name:tlink(これもクエリになるので簡潔な名前に)
Promt:URL Inputに同じなのでわかりやすく。
Position:URL Inputに同じ。
Default:1 これはリンクをGoogle WEB翻訳へのリンクにするかどうかのフラグです。今回は英語から日本語なので最初から1を入力済としています。
Debug:1 Windowの下部にデバッグ出力を見ることができます。そのための値です。実際のこの値を参照してデバッグ出力されます。
そしてパイプを接続するのですが、今回は先に作成したRegexの1番目の真ん中では無く右のInput Box右の小さな○に接続します。
ここでRegexからText Inputのデータの流れを解説
Regexに来た時点ですでにRSSはすべてタイトルを除いて翻訳済です。Regexでは次の作業を行っています。-
- translatelinkを初期化します。(ユーザー入力値に置き換える。)
- ユーザー入力値に置き換えられたtranslatelinkの値を参照して"1"ならtranslatelinkをGoogleのWEB翻訳リンクに置き換えます。
- 再度ユーザー入力値(translatelink)を参照して"0"ならtranslatelinkを空にします。
- item.linkの前にtranslatelinkの値を足します。(空なら空を、Google WEB翻訳リンクならそのリンクを足します。)
以上で作業は完了です。
上のメニューからSaveをクリックし、Back to My Pipesから元の画面に戻ります。すると先ほど作成されたPipesが表示されていますのでクリックしするとURL入力欄とtlink入力欄に1が入力済で表示されているはずです。試しに何かの英語RSSリンクを入力して実行してみてください。
最後に・・・My Pipesの画面から作成したPipesの上にマウスカーソルをのせるとPublish他のメニューが出ますのでPublishをクリックして公開します。これで誰でも利用可能なWEBサービスが完成しました。
Yahoo! Pipes
Yahoo! Pipesなるものをつい先日知りました。今年の初めくらいから提供されているようですねぇ・・・今まで知りませんでしたよ。
RSS Readerモジュールを作成していて、海外サイトのRSSをそのまま表示するともちろんそのサイトの言語ですよね。それならどこにでもあるのでおもしろくない。それで日本語にオンラインで翻訳できないかと検索していたら行き当たりました。Yahoo!Pipesでは、自分でWebサービスを作成することができます。しかもブラウザ上で・・・・。動きは鈍いですが、へたなプログラミングソフトよりずっとグラフィカルで使いやすいのではないかと思います。
Yahoo! USAでの提供なので日本語じゃありませんが、解説されているサイトがありましたのでさして時間もかからずWebサービスを作成できました。
参考にさせていただいたサイトは下記↓
http://chikura.fprog.com/index.php?UID=1175617938
http://www.atmarkit.co.jp/news/200702/09/yahoo.html
本サイトで作成したPipesは以下
http://pipes.yahoo.com/pipes/person.info?eyuid=
IOEXLzUguGYb0iGrKR4QUldZoYrq
作成してから気づいたのですが、出力がRSSとJSON(他にもあるみたい)とあるのでRSS ReaderはGoogle Feed APIを使わなくても実現できますね。JSONならAjaxの制限も関係ないからYahoo!Pipesだけで完結できます。・・・ただ、Javascriptであれだこれだと記述するのが面倒なので今回はGoogleにお任せしました。(ぉぃ)
Pipesはもっと複雑な処理が可能なようなのでもっと便利なものが作成できそうですが、今回は必要十分・・・ってことで超簡単なものです。(というか使い方があまりわからない)Yahoo!USAでアカウントを作成してからコピーして使ってみてください。今回作成したRSS Reader(後日提供)はPipesに対応させてます。・・ってただ、PipesにRSSのURLを渡しているだけですが。
Google AJAX APIs
Google Ajax APIsはすでにみなさんはご存じかと思います。Joomla!のコンポーネントやモジュール、マンボットなどでもたくさんこのAPIを使ったものが見受けられます。他サイトのコンテンツを自サイトに流し込む作業をphpなりで行うよりAjaxでできればユーザビリティも高まり、アクセスアップにつながるのではないでしょうか。ですが、他サイトのコンテンツを読むには制限により自サイトをプロキシにしたりして読まなければできません。
Google Ajax APIsのFeed APIでは、その制限を超えというよりGoogleがその作業を行ってくれます。しかも簡単な記述で実現できるように提供されているので驚くほど簡単に実現できます。
早速Google Feed APIを使用したモジュールを作成してみました。指定したRSSを表示してくれます。モジュール自体がやっている作業はパラメータをGoogleのJavascriptに渡す作業だけなので本当に極簡単なものです。もう少し整理してからダウンロード可能にいたします。実は、少しひねりを入れてYahoo!Pipesも使用しています。詳細はまた・・・。




























