| 発行日時 |
パイプ名 |
見出し |
|
2008-10-7 1:50
|
はっぴぃ・りなっくす - Happy Linux
|
smartsection のテスト2:画像添付
smartsection のテスト 存在しない画像を張った記事
[ img ]http: //linux.ohwada.jp/dummy123.jpg[ /img ]
問題PDFの生成がエラーになる タイムアウトし、真っ白になる。 デバックモードでは、下記のようになる。 Internet Exploer: ページを表示できません。 検索中のページは現在、利用できません。 FireFox: makpdf.php をダウンロードするモードになる。
|
|
2008-10-7 1:30
|
はっぴぃ・りなっくす - Happy Linux
|
smartsection のテスト1:画像添付
smartsection のテスト 画像を添付した記事 問題1画像が大きいと、枠からはみ出す。 問題2PDFの生成がエラーになる Internet Exploer: ダウンロード中のプログラムは、既定のプログラムで開けません。 壊れているか、正しくないファイルの種類が指定されていることが原因です。 FireFox: Acrobat Reader 『XObject「I1」が見つかりません』
|
|
2008-10-5 11:14
|
はっぴぃ・りなっくす - Happy Linux
|
[提案] ゲスト名に対応
モジュールによっては、ゲスト投稿でゲスト名を入力できるものがあります。 What's New モジュールで、ゲスト名の表示に対応するというのはどうでしょうか。 当然、モジュール側のプラグインも対応する必要があるのですが、プラグインの返り値に 'guest_name' を戻すようにして whatsnew_build_block_handler.php の 466行目あたりから function _build_line_user_name()
{
$uid_def = '';
$uname = $this->_DEFAULT_NULL;
$rname = $this->_DEFAULT_NULL;
$ret = array($uid_def, $uname, $rname);
$uid = $this->_get_article('uid');
$guest_name = $this->_get_article('guest_name');
if (( $uid === null )||( $uid === '' ))
{
return $ret;
}
elseif ( $uid == 0 )
{
$uid = 0;
$uname = ($guest_name)? $guest_name : $this->_system->get_anonymous();
$rname = $uname;
}
とすると、対応モジュールではゲスト名が表示されると思います。 ゲスト投稿を許可しているサイトでは、視認性があがると思いますので、提案させていただきます。
|
|
2008-10-4 19:38
|
はっぴぃ・りなっくす - Happy Linux
|
Re: 携帯(テンプレートセット,テーマセット切替)対応について
連投すみません。前回の投稿文を編集しようと思いましたが、編集できないので、新規投稿します。 ひょっとすると function _build_template( $template_file, $cache_time )
{
$template = $this->_DIR_MODULE.'/templates/parts/'. $template_file;
//$theme_template = $this->_DIR_MODULE.'/templates/parts/'. $GLOBALS['xoopsConfig']['theme_set'] . '/' . $template_file;
$theme_template = XOOPS_THEME_PATH . '/' . $GLOBALS['xoopsConfig']['theme_set'] . '/templates/' . $template_file;
if (is_file($theme_template)) {
$template = $theme_template;
}
return $this->build_cache_by_cache_id(
$this->_cache_id, $template, $cache_time, $this->_DEBUG_FORCE );
}
としたほうが、テーマ下にテンプレートを置けるので、このほうがいいかもしれません。
|
|
2008-10-3 9:36
|
はっぴぃ・りなっくす - Happy Linux
|
Re: 携帯(テンプレートセット,テーマセット切替)対応について
キャッシュはテーマセットおよびテンプレートセット別に記録されるようなので問題ないようです。 読み込みは、テーマセット名別だけでも構いません。ディレクトリを掘ってテーマ下テンプレートのように設置するほうが、メンテナンスが楽かも?と思ってソースを見てみたら案外簡単にできました。 - whatsnew_show_block_handler.php function _build_template( $template_file, $cache_time )
{
$template = $this->_DIR_MODULE.'/templates/parts/'. $template_file;
$theme_template = $this->_DIR_MODULE.'/templates/parts/'. $GLOBALS['xoopsConfig']['theme_set'] . '/' . $template_file;
if (is_file($theme_template)) {
$template = $theme_template;
}
return $this->build_cache_by_cache_id(
$this->_cache_id, $template, $cache_time, $this->_DEBUG_FORCE );
}
こうすることで、テンプレートをカスタマイズしている場合でもバージョンアップ時に上書きされてしまう心配がなくなります。 フィーリングが合えば、マージしていただけると嬉しいです。 よろしくお願いします。
|
|
2008-10-2 23:54
|
はっぴぃ・りなっくす - Happy Linux
|
携帯(テンプレートセット,テーマセット切替)対応について
kenさん、こんにちは。お久しぶりの nao-pon です。 遅ればせながら、What's New モジュールを最新版にアップデートしました。  さて、本題ですが、私のサイトでは、携帯アクセスの場合、携帯対応レンダラーでテーマセットおよびテンプレートセットを切り替えてレンダリングしていて、携帯用に別にテンプレートを用意して対応しているのですが、この切り替えを考慮したテンプレートの読み込みとキャッシュ機構を実装していただくことは可能でしょうか。 (テーマセットおよびテンプレートセットを切り替えは WizMobile でも実装されています。) テンプレート読み込みに関して、例えば、テンプレートセット名 "ktai", テーマセット名 "ktai_default" としている場合で、"whatsnew_blk_bop.html" を読み込む場合、"ktai-ktai_default-whatsnew_blk_bop.html" があれば、それを読み込み、なければ "whatsnew_blk_bop.html" を読み込むといった感じでしょうか。 ご検討のほどよろしくお願いします。
|
|
2008-10-2 16:21
|
はっぴぃ・りなっくす - Happy Linux
|
Re: ExifDataから得られた撮影時刻がおかしくなる時があります
早速の対応ありがとうございました.
|
|
2008-10-2 14:59
|
はっぴぃ・りなっくす - Happy Linux
|
ちょっと要望 タグ機能について
すいません、ちょっとご要望になります。
最近、picoにも搭載されたタグ機能なんですが、Weblinksでも対応されないかなと思っております。 サイト登録時に、yomiのように、キーワードを入力する項目があって、その情報をブロック表示できれば・・と切望しております。 ・・というのも、picoでつくったページにてトップにタグを表示させたら、結構、受けがよかったのと、ページのアクセス数がちょっとずつですが増加現象が見られます。 SEO的なもの・・とかではなく、たまたま偶然なのかもしれませんが、アクセス解析で見ると、タグ文字がヒットしているみたいで、こりゃ、いいな・・と思ったもんで。
でも、言うはやすし行うはなんとか・・ですよね。
お忙しいところすみませんが、一度、ご検討していただければと思っております。
よろしくお願いします。
|
|
2008-10-1 23:48
|
はっぴぃ・りなっくす - Happy Linux
|
Re: liaiseにウェブサイト名を表示させたいのですが
ありがとうございます。時間が掛かりそうですが、試行錯誤してみます。 出来ましたらご報告します
|
|
2008-10-1 14:22
|
はっぴぃ・りなっくす - Happy Linux
|
プラグインインストールに関して
こんにちは、 基本的な質問で申し訳ないのですが、 xnshopで検索して、こちらのサイトにたどり着きまして whatsnew-243.zipにプラグイン?が入っているとのことでしたので ダウンロードしたのですが、解凍フォルダ内にある /plugins/xnshopフォルダをxoopsのモジュールフォルダに 入れてインストールすればよいのでしょうか?
XOOPS2.1.5を使用しています。
|
|
2008-10-1 8:21
|
XOOPS Cube日本サイト
|
XOOPS Cube Legacy ディストリビューション「HD」の紹介がOSC2008 Tokyo/Fall であります。
10月3日(金曜)4日(土曜)に開催されるオープンソースの祭典「オープンソースカンファレンス2008 Tokyo/Fall」で、XOOPS Cube Legacy のディストリビューション「HD」の紹介セッションがあります。 続き...
|
|
2008-9-26 21:25
|
XOOPS Cube日本サイト
|
オープンソースカンファレンス 2008 fall 10/3 金曜日 午後2時から講演
内容は、XOOPS Cube,NetCommons,OpenPNE,modx,wordpress,soycms を同時に体験できる、Windows ベースのパッケージWARPの展示です。今は、多くのCMSやWebアプリケーションがあります。ユーザはそれらを評価する必要がありますが、インストールするのはめんどうです。そういったインストールの手間を省くのがWARPです。 CMS間の連携もはかれたらいいなと思っていますのでよろしくお願いします。 講演の申込は、 http://www.ospn.jp/osc2008-fall/ からどうぞ続き...
|
|
2008-9-25 20:26
|
XOOPS Cube日本サイト
|
釣人倶楽部
釣り好き仲間のコミュニティーサイトです。
サイト構成: 配布モジュールをそのまま利用しており特に変更はしておりません。 なので、xoopsってなんだろう?xoops初心者の自分が利用したらどうなるんだろう・・・? こういったレベルの方は訪問して見て下さい。xoopsで可能な事の一例が分かると思います。
逆にいうと初心者の方でも、このようなサイトが作成可能なのがxoopsです・・・という事です。
|
|
2008-9-25 4:05
|
XOOPS Cube日本サイト
|
モジュール情報のページをベータ公開しました
|
|
2008-9-25 3:58
|
XOOPS Cube日本サイト
|
「XOOPS JPEx」 バージョン1.2リリース
XOOPS JPEx バージョン1.2をリリースしましたのでお知らせいたします。 XOOPS JPEx 1.1からの変更点は以下のとおりです。 続き...
|
|
2008-9-23 8:04
|
XOOPS Cube日本サイト
|
外部認証モジュール Ver.0.31
外部認証モジュールをβ版として公開しています。
ようやく新ドメインで再開できました。元々のサーバがダウンしてしまいご迷惑をお掛けしまして申し訳ありませんでした。
現在
- OpenID
- はてな認証
- ライブドア認証
- JugemKey認証
- TypeKey認証
- POP3認証
- Basic認証
を実装しています。
とりあえず、お試しください!
|
|
2008-9-18 11:50
|
XOOPS Cube日本サイト
|
XOOPS CubeプロジェクトがXOOPS Cube Legacy 2.2.0のアイディア、機能要望を募集開始
|
|
2008-9-17 10:39
|
XOOPS Cube日本サイト
|
CMS Night 9/24 のお知らせ
イベントは、レクチャー(無料)、懇親会(有料 2000円)に分かれています。 ※懇親会は、レクチャーと同じ会場で行います。 レクチャーは、 WAPR のデモです。複数のWebアプリケーションをいれたWindowsで動く、アプリケーション体験環境です。 懇親会は、デザイナー、ビジネス的にCMS を使う立場の方、などプログラミング以外のかたも幅広く参加し、カジュアルな雰囲気で、CMS の可能性について意見交換する場です。 懇親会では、CMS 関連でビジネスなさっている方を特に歓迎します。ぜひ、得意な分野や実績をご紹介ください。 CMSでサイト構築を考えられている方も、気軽に質問できる場としてご利用いただけます。 またダイバーシティ的観点から、女性のWeb関連の仕事をなさっている方の参加を歓迎します。 ※今回の懇親会では、おつまみとしてアンチョビグリーンオリーブを出します。オリーブマーケットのおいしいオリーブのおつまみです。(ドライフルーツもメニューに加えます。こうご期待) 日時:2008年9月24日(水曜日) レクチャー編:19:00~20:00 懇親会:20:00~ 場所:長尾ビル7階 連絡先070-6673-4797 費用:レクチャーは無料です。懇親会は、参加費2000円です。 定員:レクチャー編12人 懇親会20人 内容:WARP 準備: 懇親会に参加なさる方は、名刺をお持ちください。CMS 関連ビジネスなさっている方は、パンフ等お持ちいただけたら、配布いたします。 申し込み: http://it.isogaya.co.jp/modules/menu/main.php?page_id=65&op=change_page続き...
|
|
2008-9-13 3:54
|
XOOPS Cube日本サイト
|
当サイトダウンロードコーナー改良予定のお知らせ
さて、日本サイトではリニューアルの第2弾として、近日中にダウンロードコーナー の改良を予定しています。ダウンロードコーナーに新規モジュールを導入し、 XOOPS Cubeの公式配布パッケージおよびサードパーティ製ディストリビューション、 そしてモジュールの情報を整理・充実させていく予定です。
各パッケージやモジュールの情報には、リリース情報、ユーザーコメント、 関連リンク等が自由に投稿できるようになっています。また、各リリース情報 に対して動作報告の提供や、関連リンクへの投票等が行えます。
また、各パッケージやモジュールの開発者は、該当するパッケージやモジュールの 開発者として登録することで、そのパッケージやモジュールの情報を管理できる 仕組みになっています。
XOOPS Cubeのユーザー、開発者のみなさま、そして当サイトスタッフ共同で 有用な情報の提供の場を構築していくことができればと思います。
|
|
2008-9-12 17:23
|
PEAK XOOPS
|
「Ajaxセキュリティ」を監訳しました
  最近、こんな書籍を監訳しました。  HP SoftwareのBilly HoffmanとBryan Sullivan両氏による"Ajax Security" (Addison-Wesley) が原著です。 基本的には、渡邉さんの手による和訳文を読んで、日本語として判りづらいところや技術的におかしなところに突っ込みを入れる、という作業がほとんどでしたが、原著自体がなかなか面白く、楽しんで仕事ができました。 毎コミのぽち@さんに「宣伝しておきますね」と安請け合いしておきながらナニですが、ぶっちゃけ、この書籍 高いです。 5,040円もします。(元が$49.99だということを考えれば、意外と安いとも言えます) 個人レベルではなかなか購入できないでしょう。 でも、職業としてWebプログラマーをやっている人なら、一度目を通しておいても損はしないだろう、と思えるレベルの書籍だと思います。 Web開発系会社の社長さん、ぜひ御社のプログラマーやテスタに買い与えてやってください  この書籍は特にJavaScript系の攻撃に詳しく、そういう落とし穴を事前に知っておくだけでも、今後のキャリアに役立つはずです。 「オレオレ詐欺(振込め詐欺)」だって、その手口を知っているのと知らないのとでは、引っかかってしまう危険性は雲泥の差でしょう。 ついでに、これまた正直に書いておくと、原著には結構突っ込みどころが多く存在してました。 ただ、それらについては、極力、訳註という形でフォローしてますので、トータルではそれなりのレベルには仕上がっていると思います。 もちろん、私のつけた訳註そのものが間違っている可能性もありますが、万一その場合は正誤表を載せる方向でご容赦ください  すでにAmazon様にも登録されていて、9/26発売だそうです。 (Amazonの方が監訳者よりよほど詳しい!  ) <姑息なアフィリエイトリンク># ちなみに表紙は、アヤックス(AFC Ajax)のディフェンダーです  # ちゃんと急所をおさえているとこに注目!
|
|
2008-9-9 10:48
|
XOOPS Cube日本サイト
|
9/20 XOOPS Cube 勉強会 - その30
2008年9月20日(土)18:00-20:00 より、「 異業種"人"交流会eXe」にて、「XOOPS Cube勉強会」を行ないます。 座談会形式で、XOOPS Cube に関する情報交換などを行いながら、皆さんと一緒に勉強していこうという、アットホームな雰囲気の勉強会です。 続き...
|
|
2008-9-6 6:02
|
PEAK XOOPS
|
D3モジュール用のイベント通知ハンドラ
  D3モジュールの問題点として、イベント通知処理が面倒、というのがあります。 X2のNotificationHandlerは、triggerEvent()する時に、 ROOT/modules/(dirname)/language/(lang)/mail_template/(mail_template).tpl を読みに行きます。 そこにファイルが無かった時点で、イベント通知は無効だとして処理がスキップされてしまいます。 それを回避するために、d3forumやpicoでは、それぞれ独自のtrigger_event関数を作っていたのですが、それは明らかに工数の無駄です。 D3モジュール用に、イベント処理テンプレートファイルをTRUST_PATHの下からも検索してくれる共通のルーチンを書けば良いだけです。 D3モジュールを使うならaltsys必須 というのも事実上ルール化してますので、D3NotificationHandlerクラスをaltsysに追加しました。 使い方は簡単です。
$notification_handler =& xoops_gethandler( 'notification' ) ;
$notification_handler->triggerEvent($category, $item_id, $event, $extra_tags, $user_list, $module_id, $omit_user_id);
従来は上の書き方だったところを、下のように変更するだけです。
require_once XOOPS_TRUST_PATH.'/libs/altsys/class/D3NotificationHandler.class.php' ;
$notification_handler =& D3NotificationHandler::getInstance();
$notification_handler->triggerEvent($mydirname, $mytrustdirname, $category, $item_id, $event, $extra_tags, $user_list, $omit_user_id);
モジュール指定を $mid ではなく $mydirname で渡すところが違いますが、D3モジュール的にはこの方が使いやすいでしょう。 あまりいろいろテストしてませんが、おそらくXCL2.1でもImpressCMSでも本家2.3でもこのコードで動くでしょう。 すでに手元のpicoやd3forumは、このコードを利用していますので、今後の私のD3モジュールはすべて altsys-0.61以上必須、という形になる予定です。(実際には、altsys本体のバージョンが低くても、class/D3NotificationHandler.class.php ファイルだけ用意すれば事足りますが) なお、このD3イベント通知ハンドラにおけるメールテンプレートの検索順序は以下の通りです。
ROOT/modules/(mydirname)/language/$language/mail_template/
TRUST/modules/(mydirname)/language/$language/mail_template/
ROOT/modules/(mydirname)/language/english/mail_template/
TRUST/modules/(mydirname)/language/english/mail_template/
|
|
2008-8-30 18:39
|
PEAK XOOPS
|
XUGJダウン中
  8月29日深夜より、XUGJがアクセス過多でSWAPしまくり状態になり、ほぼダウンした状態になりました。 私が連絡を受けた時点ですでにSSHログイン効かない状態になっていて、かろうじて生きていたserver-statusで確認した限りでは、大量のクローラがW状態でした。明らかに大量のリクエストを処理しきれなかったのが原因でしょう。 # 大量のクローラーのうち、特に悪質だと思われるのは、baidu-jpとbecome。 # この2つは、iptablesレベルで弾いた方が良いかもしれません。 # XCLで運用しているみなさんもお気をつけください その後も状況は悪化する一方で、sshは完全に無反応、server-statusも効かなくなり、もはやハードウエアリセットしか手はない状態です。 しかし、その専用サーバをホスティングしている会社は、週末は一切連絡がつきません(個人的にはそれが一番信じられませんが)。つまり、月曜の朝に社員が出社してくるまで、XUGJがダウンし続けることはほぼ確定しました。XUGJの管理をお手伝いしているものとしては大変心苦しいのですが、月曜朝までお待ちください。 XUGJのサーバが復活し次第、fabiさんと相談して、同様の事態にならないような対策(ホスティングサービスの変更も含む)を講じたいと思います。
|
|
2008-8-30 6:31
|
PEAK XOOPS
|
D3モジュールの定義
  「今さら定義?」という気もするのですが、ホダ塾メンバーでさえも、D3の重要な仕様を知らなかったことに驚き、あらためて"D3"を定義したいと思います。 もともと"Duplicatable"は、X2の制限をいかにして回避するか、ということを考えて積み上げられてきたテクニックの集大成です。 つまり、「X2で動くこと」というのがすべての"Duplicatable"の大前提となります。それはD1・D2・D3に共通します。 だから、「XCL専用」のモジュールは、複製可能でXOOPS_TRUST_PATHを使おうとも、それはD3ではないのです。 もちろん、「X2でも動作確認しなさい」などと偉そうに言うつもりはありません。ただ、D3の構造を素直に利用すれば、X2でも自動的に動くはずなのです。(この部分には多少誇張が含まれてますが) D3の構造を意図的に外して、XCL専用とするのも当然自由ですが、それがD3でないのは自明です。 D3の構造で作ったけど、できあがったものはX2互換がなかった、なんて可能性も当然考えられます。そしてX2での動作確認を必要条件にするつもりもありません。でも、そういうケースならX2互換にするのは簡単でしょう。 D3モジュールは、世界中のX2アーキテクチャーで動きます。ImpressCMSでも、JP版X2でも、もちろん本家版XOOPSでも(一部要修正)。だからこそ、XCL専用モジュールには"Duplicatable V3"という名前を冠して欲しくないのです。それはXCL以外の海外ユーザの誤解を招くからです。 前置きが長くなりましたが、D3モジュールの定義を書きます。 *必要条件(こうじゃなければD3モジュールとは呼べないもの) (1) 原則的にX2互換であること (2) dirnameが[0-9a-zA-Z_-]のキャラクター組み合わせで自由に決められること (3) ほとんどのロジックがXOOPS_TRUST_PATHの内側にあること (4) ROOT/modules/下にあるディレクトリをコピーするだけで複数動作すること(そこにソースコード書き換えは一切発生しないこと) (5) XOOPS_TRUST_PATHの内側(ロジックの記述されたファイル)は複製する必要がないこと *推奨条件(そうじゃなくても良いが、できれば対応して欲しいもの) - ROOT/modules/(dirname)/mytrustpath.php ファイルを用意すること - 利用する各テーブルは (prefix)_(dirname)_(table) という名前でCREATE TABLEされること - テンプレートは (dirname)_(tplfile) という形でDBに取り込まれること - blocks/(tplfile).html という階層を持ったテンプレートをブロックに利用しないこと(=ブロック用のテンプレートも他のmoduleテンプレートと同様に扱うこと) - 特に理由がなければ、ブロックも複製可能とすること(can_cloneのセット) - D3言語マネージャを利用すること - コメントにはd3コメント統合が利用できること 「推奨条件」はまだ増えるかもしれませんが、「必要条件」は最初の5つだけです。 なお、D3モジュールの構造については、Gnaviのkentaroさんが判りやすいドキュメントを作成してくれています。まだ途中ではありますが、非常に良くできたテキストで、これからD3モジュールを作ろうという人にも、すでに作ったことのある人にも役立つと思います。 http://xoops.iko-ze.net/modules/pukiwiki/
|
|
2008-7-9 5:21
|
Joomla!じゃぱん
|
メンテナンス
Joomla!じゃぱんの管理サイト・www.joomla.jp・forum.joomla.jp・help.joomla.jpのメンテナンスを2008年07月13日に行います。メンテナンス中はアクセスできませんのでご了承ください。現在確認されている不具合フォーラムにログイン出来ない。 http://forum.joomla.jp/smf/ (http://forum.joomla.jp/smf/) でログイン可能ですが現行フォーラムはメンテナンス後観覧のみになります。 フォーラム、ダウンロードはメンテナンス後新しくなります。
|
|
2008-7-9 5:08
|
Joomla!じゃぱん
|
リリース - Joomla! 1.5.4
セキュリティフィックスを含むアップデートが行われました。コアパッケージ及びアップデートパッケージのダウンロードはこちら (http://joomlacode.org/gf/project/joomla/frs/?action=FrsReleaseBrowse frs_package_id=3786) Joomla! 1.5.4 + ja-JP(日本語言語パッケージ同梱)は変更された言語ファイルをチャック後配布します。
|
|
2008-6-22 17:39
|
PEAK XOOPS
|
EMLHで英語と日本語でフォームを分ける(2) XCL2.1用preload編
  EMLH-1.30相当の機能をpreloadで実現してみました。HDのpreload/disabledにもこっそり忍ばせてあったりします  preload/MultiLanguagePostMerger.class.php
<?php
if (!defined('XOOPS_ROOT_PATH')) exit();
@include_once XOOPS_ROOT_PATH . '/modules/cubeUtils/class/MultiLanguage.class.php';
class MultiLanguagePostMerger extends XCube_ActionFilter
{
function preFilter()
{
if ( ! empty( $_POST ) && file_exists(XOOPS_ROOT_PATH.'/modules/cubeUtils/class/MultiLanguage.class.php')) {
// just after MultiLanguagePreLoad
$this->mController->mGetLanguageName->add(array(&$this, 'postMerger'),XCUBE_DELEGATE_PRIORITY_FINAL+1);
}
}
function postMerger()
{
global $cubeUtilMlang ;
if( is_object( $cubeUtilMlang ) ) $this->mergeRecursive( $_POST ) ;
}
function mergeRecursive( &$data )
{
global $cubeUtilMlang ;
$merged_string = '' ;
$langs_counter = 0 ;
foreach( array_keys( $data ) as $index ) {
if( is_array( $data[ $index ] ) ) {
$this->mergeRecursive( $data[ $index ] ) ;
} else if( in_array( $index , $cubeUtilMlang->mLanguages ) ) {
$merged_string .= '['.$index.']'.$data[ $index ].'[/'.$index.']' ;
$langs_counter ++ ;
}
}
if( $langs_counter == sizeof( $cubeUtilMlang->mLanguages ) ) {
$data = $merged_string ;
}
}
}
当たり前ですが、XCL2.1専用です。 XCL2.1のpreloadフォルダには以下の3つのファイルすべてが揃っている必要があります。 MultiLanguageCompatibleEMLH.class.php MultiLanguagePostMerger.class.php MultiLanguagePreLoad.class.php 使い方はEMLH版とまったく同じです。フォームのテンプレートを書き換えるだけです。 個人的には、XOOPSのML機能の大きな改革になるんじゃないかと思ってます。 最初から言語毎のフィールドを用意しているアプリケーション(例えばosCommerceなど)と同等の操作感になるわけですから。 なおこれらのコードでは、PHP5専用なら明らかにprivateにするだろうと思われるオブジェクトプロパティを参照のみならず、一時的に書き換えるなど、かなりアクロバティックなことをやってますが、なにとぞご容赦を  # cubeUtils側で取り込んでもらっても構いませんぜ >nobunobuさん
|
|
2008-6-20 11:49
|
PEAK XOOPS
|
EMLHで英語と日本語でフォームを分ける
  EMLHに限らず、多言語系のHackはデータ入力にやや困難を抱えています。
[en]English[/en][ja]日本語[/ja]
こんな形でテキストを書いて欲しい、とお願いしても、タイプに慣れている人じゃないと難しいでしょう。 というわけで、EMLH 1.30 でそういう機能を実装してみました。 http://xoops.peak.ne.jp/md/mydownloads/singlefile.php?lid=50&cid=2フォームがテンプレート化されていれば簡単です。 例えば、pico の main_content_form.html であれば、
<input type="text" name="subject" id="subject" size="80" maxlength="255" value="<{$content.subject}>" />
という一つの<input>をこんな感じの2つの<input>に分割します。
English:
<input type="text" name="subject[en]" id="subject[en]" size="80" maxlength="255" value="<{$content.subject|easiestml:"en"}>" />
Japanese:
<input type="text" name="subject[ja]" id="subject[ja]" size="80" maxlength="255" value="<{$content.subject|easiestml:"ja"}>" />
valueの部分に、easiestml() をかける、というのがミソです。 cubeUtils版もおそらくは、ほぼ似たようなやり方で行けるでしょう(もしかしたらコンパイルタイミングの問題でSmartyプラグインを明示的に用意しなければならない可能性はあります)。 XCL用preloadは次回のネタとします。 # 私なんかはフォームが言語毎に別れているより、一つの入力エリアでエイヤっと全部テキスト入力出来る方がよほど嬉しかったりしますが
|
|
2008-6-13 16:24
|
PEAK XOOPS
|
cubeUtilsをEMLH互換とするpreload
  EMLHはXCL2.1でもまったく問題なく動きますが、いろいろな意味でcubeUtilsの方がより使いやすい多言語処理と言えるでしょう。前者は一応Hackで、後者はモジュールだ、というのもあります。 ただ、この手の多言語処理は、ob_filterを利用しているので、メール送信処理などで、言語タグが未処理のまま送られてしまうことはままあります。 そのあたりの経験を積んでいるモジュール作者であれば、メールを送信する前、本文などに言語タグ書き換え処理を入れます。
if( function_exists('easiestml') ) {
$body = easiestml( $body ) ;
}
実際に私が作ったモジュールにも、このようなコードを沢山使ってます。 ただ、このロジックでは、EMLHを入れている場合は良いのですが、cubeUtilsを入れている場合に効きません。そのため、例えばpicoのフォームメール機能を言語タグを利用して記述した場合、タグが未処理のままメール本文になってしまいます。 というわけで、cubeUtilsを利用していても、EMLHと同じ処理がされるようなpreloadを作ってみました。preloadフォルダに放りこんでください。この場合、ファイル名は何でも良いのですが、MultiLanguagePreLoad.class.php と併存する必要があるので、それっぽく名づけてあります。 MultiLanguageCompatibleEMLH.class.php
<?php
function easiestml( $s )
{
if( is_object( @$GLOBALS['cubeUtilMlang'] ) ) {
return $GLOBALS['cubeUtilMlang']->obFilter( $s ) ;
} else {
return $s ;
}
}
え? これだけ? ええ。これだけです  「なんじゃそりゃ!」と突っ込みを受けそうなコードですが、cubeUtilsの言語切替機能を使っている人にはかなりお勧めです。
|
|
2008-5-16 4:55
|
PEAK XOOPS
|
get_html_translation_table()の罠
get_html_translation_table()の罠   最近、unhtmlspecialchars() も実装されたようですが、get_html_translation_table() を利用して、htmlspecialchars() の逆関数を作っていた人も多いでしょう。
function my_unhtmlspecialchars( $text , $quotes = ENT_QUOTES )
{
return strtr( $text , array_flip( get_html_translation_table( HTML_SPECIALCHARS , $quotes ) ) ) ;
}
ところが、それだとなぜかシングルクオートだけがうまく処理されないことに、今さら気づきました。 おかしいなと調べてみたら、get_html_translation_table( HTML_SPECIALCHARS , ENT_QUOTES ) と htmlspecialchars( $text , ENT_QUOTES ) では、結果が違います。 コード:
<?php
var_dump( htmlspecialchars( '"\'<>&' , ENT_QUOTES ) ) ;
var_dump( get_html_translation_table( HTML_SPECIALCHARS , ENT_QUOTES ) ) ;
?>
結果:
string(25) "& quot;& #039;& lt;& gt;& amp;"
array(5) {
["""]=>
string(6) "& quot;"
["'"]=>
string(5) "& #39;"
["<"]=>
string(4) "& lt;"
[">"]=>
string(4) "& gt;"
["& "]=>
string(5) "& amp;"
}
& #39; と & #039; …。 そりゃ逆変換できないのも当然です。 ええ〜、そりゃないんじゃないの! という感じです。以前、PHPのマニュアルにも、逆関数の作り方として、get_html_translation_table()の結果をarray_flip()する、なんてコードが載っていたような記憶もあるのですが… もしかすると有名な不具合なのかもしれませんが、うちでビルドしたCLI版PHPは、4.3.10から5.2.5までことごとくこういう食い違いを見せていたので、もしかしたら誰も気づいていないのかもと思って書いてみました。
|
|
2008-4-30 5:36
|
PEAK XOOPS
|
Emailログインpreload for XCL2.1
  XUGJで質問されて気づいたのですが、XCL2.1のEmailログインpreloadって意外と見つからないですよね。 (もしかしたら、デベロッパーズバイブルあたりに書いてあったのかもしれませんが、今手元にないので確認できません) 絶対に誰かが作っているとは思うのですが、パッと見つからないのは不便なので、ささっと作ってみました。 もちろん、cubeUtilsのオートログインとも併用可能です。 (cubeUtilsはSite.CheckLogin.Successにクッキー処理を追加するだけ。このpreloadはSite.CheckLoginに認証方式を追加するだけだから) こちらからダウンロードしてください。 http://www.peak.ne.jp/support/xoops/XCL_EmailLoginHack.tar.gz
|
|
2008-4-29 9:41
|
Joomla!じゃぱん
|
リリース - Joomla! 1.5.3
お待たせしました。Joomla! 1.5.x系の日本語ランゲージパック 翻訳の見直しが完了しましたのでJoomla!1.5.3 + ja-JPをリリースしました。ダウンロードはこちら (http://prdownloads.sourceforge.jp/joomla/29041/Joomla_1_5_0_ja-JP_Stable.zip)インストール後、メニューバー=>エクステンション=>プラグイン管理から Editor - TinyMCE 2.0プラグインを選択してプラグインパラメータよりランゲージコードを[ ja ] に設定する事でWYSIWYGエディターも日本語になります。ランゲージパックのみのダウンロードはJoomla! Accredited Translations プロジェクトサイトのダウンロードにあります。http://joomlacode.org/gf/project/jtranslation/frs/?action=FrsReleaseBrowse frs_package_id=33 (http://joomlacode.org/gf/project/jtranslation/frs/?action=FrsReleaseBrowse frs_package_id=33)注意:PDF font, TinyMCEの日本語ファイルはJoomla!1.5.3 + ja-JPには付属しますが、それぞれ単体のファイルダウンロードは用意していません。TinyMCEはTinyMCE プロジェクトサイト (http://tinymce.moxiecode.com/) に日本語ファイルがありますのでそちらからダウンロードして下さい。PDF fontはJoomla!で利用できる全言語のPDF Fontをまとめてアップロードする予定はありますがまだ何処にアップロードするのか決まっていません。(案内ページは英語のみになると思われます)翻訳等の誤訳はワークグループへお知らせ下さい。ワークグループ メーリングリスト http://joomla.jp/mailman/listinfo/workgroup (http://joomla.jp/mailman/listinfo/workgroup)
|
|
2008-4-29 5:25
|
PEAK XOOPS
|
d3pipesで誤ったRSSを取得する
  どうしてもd3pipesで取得できないRSS/Atomがあった場合、まずはそのフィードをRSS Validatorにかけてみると良いでしょう。 例えばこんな感じ。 http://feedanalyzer.com/?url=http%3A%2F%2Fwww.ec-cube.net%2Fec-cube.php基本的なXMLに違反したフィードは意外と多くあります。 問題は、RSS/Atomはあくまで、先方が出力しているので、こちらが文句を言っても修正される保証がない点です。 そういう時に便利なのがtidyです。HTML用に使うことが多いようですが、XMLもちゃんと修正してくれます。 というわけで、d3pipes 0.61では、XML修正用のtidyジョイントも追加しました。 パーサの前に、tidy4xml を挿入してください。 XMLパーサでエラーが出ていたEC-CubeのRSSも、tidyによってちゃんと修正され、d3pipesに取り込むことができるようになります。
|
|
2008-2-3 17:25
|
Joomlaism - Joomla!の使い方ガイド
|
Joomla! 1.5 GUIDEを公開しました
Joomla! 1.5 GUIDE
Joomla! 1.5 GUIDE (http://joomla1.5guide.net/)に追加しています。
|
|
2008-1-16 12:05
|
Joomlaism - Joomla!の使い方ガイド
|
myContent:フロントエンドからコンテンツ管理
Joomla!のバックエンドにログインせずコンテンツを管理できる
Joomla!のフロントエンド側にコンテンツリストを表示させて、バックエンドにログインすることなくコンテンツ管理・編集が行えるコンポーネントです。複数ユーザーでコンテンツ管理を行う場合に、各ユーザーにバックエンド側を使わせる手間が省けるのは便利です。
myContentのダウンロード
Joomlicious (http://joomlicious.com/)に最新版がありますが、Joomla! E.D.にもリンクがあります。
myContent (http://extensions.joomla.org/component/option,com_mtree/task,viewlink/link_id,564/Itemid,35/)
ダウンロード後、コンポーネントとしてインストールします。バックエンドの「コンポーネント」メニューからmyContentを選択すると、下の画像のようにこのコンポーネントの簡単な説明が表示されます。
通常のコンポーネントと同様、バックエンドの「メニュー」からmyContentを使えるように設定します。コンテンツ内容を編集するためのコンポーネントなので、説明にあるようにアクセス権限を「Registered」以上に割り振ります。
myContentの使い方
フロントエンドメニューからmyContentを選択すると、下の画像のようにコンテンツがリスト表示されます。
ユーザーの権限によって、編集できるコンテンツが制限されます。Author以上の権限が割り振られているユーザーであれば、リストの一番上に新規投稿用のドロップダウンメニューが表示されます。
ここでカテゴリを選択すると、そのまま新規コンテンツ作成画面が開きます。AuthorやEditor権限ではコンテンツ作成は可能ですが、公開するにはサイト管理者の確認が必要になります。Publisher権限を割り振ると、公開/非公開設定だけでなく他のユーザーが投稿したコンテンツ内容も編集することができるようになります。
管理者は通常のコンテンツ投稿時と同様、バックエンドのメッセージ通知で新規に投稿があったことを確認できます。
myContentの設定
myContentの表示方法や機能の選択は、メニューのパラメータ欄から可能です。バックエンドから再度「メニュー」を選択し、さきほどメニューに割付したmyContentをクリックします。
右側にパラメータ設定項目が並びますので、ここでmyContentを選択した際のリストの表示方法や新規投稿メニューを表示させるかなどを設定します。
myContentを導入することで、フロントエンド側からコンテンツ編集を行うことが多い人や、各ユーザーがフロントエンド側のみで編集作業を行うことが多いサイトでは、利便性がかなり向上するのではないでしょうか。
|
|
2007-12-10 13:57
|
Joomlaism - Joomla!の使い方ガイド
|
JCal Pro:使いやすいスケジュール管理コンポーネント
Joomla!でスケジュールやイベント管理
JCal Proは、Joomla!のエクステンションとしていくつか公開されている、スケジュール管理コンポーネントのひとつです。自分のスケジュール確認に、あるいは複数人でのイベント管理などに利用できます。フロントエンドから簡単にイベントが追加できること、イベントを表示させるための管理者権限の設定が容易なことから、会社やチーム、サークルなどのスケジュール管理には向いているエクステンションだと思います。スケジュール検索機能もデフォルトで用意されています。
JCal Proのダウンロード
ダウンロードは下記サイトから。ただし現時点(2007年12月。JCal Proのダウンロードだけなら$5。)では、有償のエクステンション扱いになっているようです。RocketThemeの記事でも触れましたが、Joomla!向けの有料エクステンションを利用する場合は、PayPal (https://www.paypal.com/j1)を経由するとEメールアドレスでの送金ができるので便利です。
Anything Digital (http://dev.anything-digital.com/)
JCal Client、Downloadと進んだ先にファイルがあります。コンポーネントやマンボット等が並んでいますが、最低限必要なのはCore ComponentのStable版(動作安定版)です。
インストールと設定
コンポーネントとしてインストールしますが、そのままでは日本語が文字化けしてしまいます。languagesフォルダ内のenglishフォルダをコピーして、japaneseと名前を変えて保存します。
japaneseフォルダの中のindex.phpファイルを、エディタソフトを使って開きます。
38行目から41行目にかけてが言語の設定なので、ここをすべて日本語仕様に変更してしまいます。
たぶん、こんな感じに直せば大丈夫だと思います。これをFTPソフトを使って、該当するフォルダにアップロードします。
JCal Proの使い方
JCal Proはフロントエンドからもバックエンドからも更新できるツールですが、まずはバックエンド(管理画面)側から、カテゴリーの作成などを行っておきます。
メニューから「Manage Event Categories」を選択します。
新規作成ボタンを押すと、次のような画面が表示されます。
一番上にカテゴリーの名称、二番目にはカテゴリーの説明(フロントエンドでも表示されます)、Colorはカテゴリーが表示されるときに付属するカラーの選択です。パーミッションは誰がアクセス可能かを選択します。
スケジュール自体の追加はバックエンドからも可能ですが、フロントエンドから行ってしまったほうが楽だと思います。
フロントエンドにログインした状態で、イベントを追加したい日の上のほうに表示されているプラスのマークをクリックします。
イベントの追加は、通常のコンテンツを作成する作業とほとんど同じです。
Event Titleにイベントの名称を記入し、詳細はテキストエリアに書き込みます。その下のほうに、カテゴリーを選択する欄や開始・終了時刻を指定する欄、連絡先の名称やEメールアドレスを入力する欄がありますので、必要な項目を埋めていきます。最後にAdd Eventボタンを押せば作成完了。
バックエンドを管理できる権限が与えられているユーザーであれば、管理者の確認なしにイベントが表示されます(このへんはJCal...
|
|
2007-12-8 13:34
|
Joomlaism - Joomla!の使い方ガイド
|
Joomla!をXserverにインストールする
レンタルサーバー、エックスサーバーへのインストール方法
ここでは株式会社ベット.の運営するエックスサーバー (http://px.a8.net/svt/ejp?a8mat=16E425+30CZ6Y+CO4+609HU)(Xserver)を例に、Joomla! 1.0.XXを導入する方法を紹介していくことにします。エックスサーバーは独自ドメイン無制限、複数データベースの利用が可能という特徴があり、サービス当初はレスポンスの速いサーバとして話題になりました(今もそこそこの速さはあると思います)。最近は容量の追加も為されたので、ひとつのレンタルサーバを借りて複数のサイトを運営しようという人には使いやすいのではないでしょうか。
※契約時期によってはサーバのスペック等が変わっている場合があるため、当サイトで紹介した方法がそのまま当てはまらない場合があります。予めご了承ください。
データベースを作成する
Joomla!を動かすためには、MySQLというデータを格納しておくためのスペースが必要になります。 Joomla!を実際にインストールする前に、まずはレンタルサーバーのコントロールパネルから、このデータベースを作成しておきます。
エックスサーバーのコントロールパネルにある、MySQL設定という項目をクリックします。
MySQLの追加をクリックします。
データベースに名前をつけて、右下にある「MySQLの追加」ボタンを押します。ここでは便宜上joomlaとつけることにします。
「MySQLデータベースの追加を完了しました。」という文が表示されたら、このデータベースを利用するユーザーを指定するために、「MySQLユーザーの追加」をクリックします。
ユーザーIDにはユーザーの名称(先ほどのデータベースの名称と同じもので統一してしまったほうが、忘れなくていいかもしれません)を入力します。ホスト名はそのままにしておいて、データベースへアクセスするためのパスワードを指定します。
全て入力し終わったら、「MySQLユーザーの追加」ボタンを押します。今度は「MySQLの一覧」を選択してください。
アクセス権未所持ユーザ欄に、先ほど作成したユーザー名が表示されているはずですから、このまま「追加」ボタンを押します。
「MySQLデータベースへのアクセス権の追加を完了しました。」という表示が出たら、データベースとデータベースのユーザー設定はおしまいです。
Joomla!本体をダウンロードする
インストールするには、当たり前ですがJoomla!の本体が必要になります。日本語版はJoomla!じゃぱんからダウンロードしますJoomla!じゃぱんのトップページに、通常は最新版のダウンロードページへのリンクが張ってあるはずです。表示がない場合は、サイドの「ダウンロード」タブから辿ります。その際は最新版であるかどうか、バージョンをしっかりチェックしてください。
※2007年12月現在:Joomla!の1.0シリーズはセキュリティ対策の小規模なバージョンアップのみとなり、今後はβテスト中の1.5シリーズが主流になっていくようです。
Joomla!じゃぱん (http://www.joomla.jp/)
最新バージョンのフルパッケージ版のダウンロードリンクをクリックします。
「ダウンロード」をクリックします。
いくつかダウンロード元が表示される場合は、近い場所のサーバを適当に選択してクリックします。選択したダウンロード元があまりに重いようなら、一度キャンセルして別の場所を選んだほうが速いこともあります。
ダウンロードしたファイルを解凍する
圧縮されたファイルを解凍して使えるようにします ダウンロードしたファイルは圧縮されているので、そのままでは使えません。まずはLhaplus (http://www.vector.co.jp/soft/win95/util/se169348.html)などの解凍ソフトを利用して、PC上にファイルを解凍します。
上の画像のようなJoomla!のファイルが全て解凍できたら完了です。稀に解凍がうまくいかず、一部ファイルが壊れてしまう場合があります。解凍ソフト側の注意メッセージなどが表示されていないかどうか確認してください。
globals.phpファイルを一箇所変更する
Joomla!バージョン1.0.11から、セキュリティ向上のため推奨になった設定に変更します。意味は分からなくても大丈夫です。解凍したファイルの中から、「globals.php」というものを選択して、エディタソフトを使って表示させます。※Windowsに最初から付属しているソフト(メモ帳など)を利用すると、文字コードが別のものに変わってしまったり、見えない部分のデータが置き換わってしまうことがあります。できればMK Editor (http://www.mk-square.com/)など、使い勝手の良いフリーソフトなどを利用されることをおすすめします。
バージョンによって若干異なる可能性もありますが、24行目あたりの
「define( 'RG_EMULATION', 1 );」というのを
「define(...
|
|
2007-12-4 8:05
|
Joomlaism - Joomla!の使い方ガイド
|
Communty Builderの日本語化プラグイン
英語が苦手な人でもCBが使いやすくなる
ランゲージファイル内の単語が膨大で、いまだ日本語化されていなかったCommunity Builderコンポーネントですが、Joomla!の道しるべ (http://www.joomlaway.net/)さんが待望の日本語化プラグインを公開されました(Joomla!の道しるべさんの、毎度の日本語化ファイル作成には頭が下がります)。
Community Builderの日本語化プラグイン
おそらくこの後Joomla!の道しるべさん自身での解説記事がアップされると思いますので、ここでは簡単に導入方法だけ説明しておきます。CommunityBuilder(以下,CB)自体の機能やインストール方法は、下記記事を参照ください。
Community Builder:Joomla!にSNS的コミュニティ機能を追加 (http://joomlaism.net/content/view/61/45/)
ダウンロードは、もちろんJoomla!の道しるべさんから。
Community Builder 日本語化プラグイン (http://www.joomlaway.net/component/option,com_docman/task,cat_view/Itemid,25/gid,86/orderby,dmdate_published/)
CBのプラグインはCB自体のプラグインであって、Joomla!本体のエクステンションではありません。インストールはCBの設定画面から行います。
Joomla!バックエンドの「コンポーネント」から、「Community Builder」「Plugin Management」と進みます。
下のほうにInstall...
|
|
2007-11-23 11:01
|
Joomlaism - Joomla!の使い方ガイド
|
Weblog Ping:Joomla!にPing機能を追加する
Ping機能のないJoomla!に、コンポーネントでPing機能を追加
Joomla!本体にはPing送信機能がありませんが、これはブログツール的に利用しようと思っている人にとっては、今や驚くべき事実かもしれません。それほどまでに、コンテンツの更新とPing送信が結びついた時代になっていると思います。ここでは、更新したことを外部に通知する、Pingの送信機能エクステンションについて紹介します。
ダウンロードと設定
導入も設定も、とても簡単です。インストールは、次のサイトから。
Interesting about Joomla! CMS (http://physicist.phpnet.us/2007/09/16/weblog-ping-component/)
コンポーネントとしてインストール後、管理画面から「コンポーネント」「Ping」「Servers」と進みます。
Pingサーバー設定画面が開きますので、Pingを送信したいサーバーのURLを入力します。複数ある場合は、ひとつ入力するごとに改行してください。
Pingの送信
Pingの送信は、「コンポーネント」「Ping」「Ping」と選択します。送信先サーバーを多く設定していると、かなり時間がかかることがあります。Ping送信が完了すると、各サーバーごとに結果が表示されます。
ブログのように、設定しておけばコンテンツを作成した際に自動的にPingが送信されるというわけではありませんが、いくつか公開されている Ping送信系のエクステンションの中では、このコンポーネントはかなり使いやすいものだと思います。
|
|
2007-11-13 18:26
|
Joomlaism - Joomla!の使い方ガイド
|
ラッパー機能でJoomla!サイト内に外部サイトを表示させる
Joomla!サイトに外部のページをはめ込んで表示
Joomla!には、Joomla!で作成したサイトの中に、はめ込むようなかたちでJoomla!の外にある別サイトを表示させる機能、「ラッパー」がはじめから用意されています。ここでは、このラッパー機能を利用して、別ページを表示させる方法を説明します。
外部サイトのブログや掲示板を表示させるのに便利
たとえば、既にJoomla!を使わずに別の場所でブログを運営していて、Joomla!サイトの中にこのブログを同時に表示させたいとき。あるいは、Joomla!のエクステンションとして用意されているブログやフォーラム以外で、気に入ったものがあるのでそれをJoomla!サイト内に同時に表示させたいとき。そういった外部の別サイトを同時に表示させるとき、ラッパー機能が役に立ちます。このサイトでも、上部に表示されている「Joomla!書籍」というメニューで、このラッパー機能を利用しています。
オレンジの枠内は、Joomla!ではなく別のツールで作った外部のページが、Joomla!サイトの中に表示されています。もっとも、書籍の表示に使っているツールは、ラッパーを利用しなくともJoomla!本体と結合させる(ブリッジする)ことで、Joomla!のコンテンツとしても表示させることが可能なツールです。こういったツールはわざわざラッパー表示させるのではなく、Joomla!本体とブリッジした後にJoomla!自体に表示させてしまうほうが楽です。
phpbbやSMFといったフォーラムやWordPressなどのブログツールでも、Joomla!側でユーザー登録さえしてしまえば同じユーザー名とパスワードでフォーラムやブログ投稿が可能になるため、ラッパー表示させるよりもブリッジしてしまったほうが便利なものが多くあります。ブリッジできるツールを、それでも敢えてラッパー表示させる利点があるとすれば、ブリッジさせるよりバージョンアップ時のメンテナンスがしやすいというセキュリティ面でしょう。
ラッパー機能の使い方
ラッパーを利用するのは、メニュー管理から。管理画面上部「メニュー」から、ラッパー表示させるメニューを選択します。
選択後、右上の「新規」ボタンを押します。
一覧表示から、「その他」にある「ラッパー」にチェックを入れて、右上の「次へ」ボタンを押します。
「名前」に、メニューに表示させる名称を入力し、表示させるサイトのURLを「ラッパーリンク」欄に入力します。
この段階で、一度フロントエンド(Joomla!で作成したサイト)のメニューからラッパー表示させてみます。上下が狭かったりするなど、表示に問題があれば先ほどのラッパー設定画面の右下にある、「スクロールバー」以下の項目を変更して修正します。ドメインが異なるページを表示させる場合など、これらの項目を変更してもうまく変更が反映されないこともあります。表示がうまくいかない場合、これらの項目をいじってみてもっとも問題のない設定を見つけ出して保存します。
以上で「ラッパー」自体の設定は完了です。ラッパー表示させた際に、同時に表示させるモジュールなどは、各モジュールの設定画面で各々の「メニューアイテムリンク」を選択することで反映させます。モジュール設定の詳細は、以下の記事を参照ください。
ユーザーモジュールを新規作成する (http://joomlaism.net/content/view/88/47/)
まれにラッパー表示で他人の作成したサイトを自分のサイト内に表示させている人がいますが、表示方法によっては著作権法などに反する可能性があります。ラッパー機能は、あくまで自分の作った別のページを表示させる用途に限定したほうが無難です。
|
|
2007-10-12 13:54
|
Joomlaism - Joomla!の使い方ガイド
|
Joomla!のユーザーモジュールを新規に作成する
コンテンツを取り巻く、情報表示スペースを作る
Joomla!でサイトを構築する場合に、コンテンツの作成と並んで重要になってくるのがモジュールの作成です。ここでは、サイト管理者が作成するユーザーモジュールについて簡単に手順を紹介します。
コンテンツとモジュール
Joomla!でもっともメインとなるのはコンテンツ(記事)ですが、このコンテンツを取り巻くように配置されるモジュール類も、訪問者の利便性を高めるうえで重要な役割を果たします。
このサイトを例にとると、コンテンツ自体は紫色の枠の中だけで、その他の情報はほとんどモジュールが表示を担っています。
ユーザーモジュールの作成
モジュールはJoomla!本体をインストールすると、バナーやログインフォーム、テンプレートチェンジャーなど既にいくつか利用可能になっているはずです(上の画像で表示されている、「最新記事」などもそのひとつです)。また、それ以外にも様々な機能を持つものが各所で公開されています。しかし、ここで取り上げるユーザーモジュールは、そういった特殊な機能を持ったものやインストールして使うタイプのモジュールではなく、Joomla!管理画面(バックエンド)から作成する、シンプルなタイプのモジュールのことです。サイト管理者が作成するユーザーモジュールは、文字情報の表示が主なものとなります。
管理画面上部メニューから、「モジュール」「サイトモジュール」と進みます。
右上の「新規」アイコンをクリックします。
画面を一番下までスクロールさせると、カスタムアウトプットという、ちょうどコンテンツを作成するときと同じような入力欄が表示されていると思います。ここに文章を入力することで、モジュールとしてコンテンツの周囲に配置して表示することができるようになります。
画面を上に戻してください。詳細という欄があり、いくつかのパラメータが設定できるようになっています。文章を入力し終わったら、ここで公開するかしないか、公開するとして配置をどこにするかなどを選択します。慣れないうちは「公開」にし忘れて表示されないことが多いと思いますので、しっかり「はい」にチェックを入れておきます。モジュールのポジションに関しては、次の記事を参照にしてください。
モジュールの配置を決める:モジュールポジション概要 (http://joomlaism.net/content/view/86/47/)
どのカテゴリ・セクションでモジュールを表示させるかを選択
右側のメニューアイテムリンクのリストを確認します。ここには、サイトのメニュー(mainmenuやtopmenuなど)に表示させている項目が並んでいるはずです。たとえば、作ったモジュールを訪問者が「リンク」を |