Joomla!

会員制WEBサイトで、ログイン後にパブリックな記事・メニュー・モジュールを消す(Joomla!のACLを利用)

会員制のサイトで、トップページの広告や会員登録用バナーやメニューを設置している場合、会員さんがログインした後は邪魔に思えるものがあると思います。

Joomla!のユーザ権限に関する設定を追加すると、全てのユーザに公開されるものと、未登録ユーザにだけ表示されるもの(登録ユーザには表示されないもの)を分けることが可能です。

☆Joomla1.6以降に対応した機能です

ここでいうものとは、モジュール、メニュー、記事、およびプラグインです。
検索機能のプラグインを不特定多数向け、会員さん向けなどに使い分けるといったこともできます。

具体的な方法はこちら

Joomla!の記事に「Tweet」、「いいね!」、「+1」などを付けるプラグイン

Joomla!の記事にFacebookの「いいね!」ボタンを付けるプラグインは幾つかあるんですが、
Twitterの「tweet」ボタンを付けるプラグインがなかなか見つかりません。

Twitter本家のブログ用APIを使う方法もありますが、ボタンを表示させたくないカテゴリーを選べたり、
手軽にカスタマイズできるので、手っ取り早く導入できるプラグインを探していました。
記事のテンプレートを修正しちゃうと、バージョンアップ時の管理も面倒ですしね。

で、見つけたのがこれ。

Facebookの - Twitterの - Joomlaの+1のためのGoogleプラグイン
http://www.compago.it/clng_ja/347-facebook-twitter-google1-plugin-for-joomla.html

海外サイトですが、日本語に機械翻訳されてます。

Joomla!1.5,1.6,1.7対応です。

環境に合ったバージョンのプラグインをダウンロードし、あとは「エクステンション管理」でインストール後に
プラグインを有効化すればOK。

各ボタンの日本語化は、プラグインの「詳細オプション」 の中でそれぞれ設定できます。
また、標準ではメールでの共有用の「Send」ボタンが付きますが、これも「詳細オプション」の4行目くらいに
ある「Show Send」 を「No」に設定してやれば消すことが可能です。

ではでは 

Joomla 1.5 で 「フィードデータの 取得に失敗しました」のえらーが出た場合

Joomla1.5環境の管理画面で、「フィードデータの 取得に失敗しました」と
表示されるようになったと思います。

日本語言語ファイルで探すと、
ERROR LOADING FEED DATA=フィードデータの 取得に失敗しました

となっていて、管理画面の「Joomla!セキュリティニュースフィード 」モジュールで
参照先がないためにエラーとなっています。

新たなフィードは

http://developer.joomla.org/security/news.feed?type=rss

です。

管理画面から「モジュール管理」-「管理者」タブの一覧の中にあるモジュールです。

モジュールの編集画面を開いて、「フィードURL」を上記のものに置き換えれば
エラーはなくなります。

以上です

Joomla 1.7へのアップグレード

Joomla 1.7がリリースされました。

内容的にはバグフィックスとMootools1.3への対応が中心といったところでしょうか。

このサイトはまだ1.6のままですが、開発環境で1.6.3からの自動アップデートをしてみました。
特に問題なくすんなり1.7に更新されました。

ネットで1.7への更新が上手くできないという記事をみかけました。
更新プログラムの不具合と書いてるところもありますが、
実際のところ、【相談事例】Joomla!(CMS)のアップデートができないで書いたように、
PHPとApacheの設定不足によるのが原因だと思います。 

しばらく動作確認をした後、1.7に更新してみようと思いますが、
Mootools,JQueryを使う既存モジュール、プラグインとの相性を確認してからですね。 
あと、自動更新の場合は特に、サイト全体のバックアップは必ず取ってから行なうようにしましょう。 

JSeblodを使ってみて

お客様のサイト用に、JSeblod CCK(Content Construction Kit)を利用しました。

独自のコンテンツを導入する場合、コンポーネントを作成し、 自作テーブルの値を読み書きしています。

今回は、独自記事の投稿フォームのフィールド数が100個ほど、 パラメータがそれぞれに2~10個ほど存在しています。 自作のフォームでは工数がかかりすぎ、かつ自由度を高めると、それだけで独自フレームワークになってしまいます。
短期でコスト重視、かつ高機能という困難な対応なので、 JSeblodを採用しました。
海外を含めると導入事例も多く、機能は複雑ですが、動作的には安定してます。

さて、導入していて手間取った点があったので挙げておきます。

続きはこちら

Jake Joomla!にCakePHPを組み込む(その1)

2007年頃、Joomla!にCakePHPを組み込むという試みがありました。

Jake(Joomla+cake)という名前で検索すると、ヒットはするものの、
その後続きがありません。

WEBサイトを構築するだけなら、Joomla!でほぼ全てのものは間に合います。
必要なものがあれば、エクステンション(いわゆるプラグインの総称)を作ればいいわけです。

ただ、業務アプリをサイトの中に組み込むことを考えた場合、既にあるWEBアプリを
Joomla!のコンポーネントとして作り直すのは骨が折れます。

せっかくの資産をそのまま生かしたいということで、あらためてJoomla!の中にCakePHPを
コンポーネントとして組み込む試みを始めてみました。

2007年に一番参照された記事は、ここにあります。

Finally a practical solution: Joomla with CakePHP together - JAKE
http://www.gigapromoters.com/blog/2007/02/13/finally-a-practical-solution-joomla-with-cakephp-together-jake/

(コンポーネントのダウンロード先はウィルスの警告表示が何故か出るので、ソースはコピペで書き直しました)

この記事が書かれた当時のJoomla!はバージョン1.0.xでしたので、その環境に記事を参考にしつつ組み込みました。
そちらは普通に動作するようになっています。

今現在はJoomla!1.6.3を使っているので、コンポーネントも書き直さなければいけません。
大きな違いは、Ver.1.0の頃のコンポーネントは(少なくともJake)は、MVCモデルに沿っては書かれてません。

とりあえずJoomla!1.6の環境でCakePHPで作ったアプリが表示されるとこまでは来ました。

単純に既存業務システムのテーブルを参照するアプリをBakeで書いてみた。

既存システムは、問屋さんの受発注タスクとPDFを管理するWEBシステムで、CakePHPで作って
ました。このままでもいいんですが、どうせなら問屋さんと小売店を結ぶポータルサイトに仕上げて行きたい
という気持ちがあります。

ポータルの機能を1から作るよりは、やはり基本的なWEBサイト機能はJoomla!に任せ、
中身はCakePHPでというのが良いのかと。
(受発注のシステムをパッケージ化することになれば、コンポーネントとして作り直すかと思いますが)

いずれにしても形になったら提案しようと思ってます。

以下はキャプチャですが、巣のJoomlaに単にBakeで生成したばかりのビューを表示させてる
だけなので、まだ味気ないです。Cake側のテンプレートは読み込まず、Joomla側のテンプレートデザインが
生きてます。

特定のレコードの表示。URLはこんな感じ





受注テーブルの一覧をベタッと表示させてるだけですが




今はHelperのロードでエラーになってる箇所があるので、ここはまだ直さなきゃいけません。

将来的に正式にコンポーネントとしてリリースできればいいんですが、いかんせん時間が無い。。。
やりたいことは沢山あるけど、人を雇える状態でもないので、とりあえず仕事の合間にコツコツ
制作していきたいと思ってます。

続きはまた書きますね

サイト内検索

長押しで
スクロール