お疲れ様です。
タイトルの件で備忘録します。
$root = JURI::base();
$rootにはシステムパスが入ります。
すべてのパスにこのシステムパスをつけておけば
サイト移動時でも問題ないでしょう。
以上
うちなーんちゅプログラマーのクラクラが、仕事中(主にPHP関連、CakePHP(1.2系)関連。たまにその他雑記)に得た知識等を備忘録として残し、そして同じ問題で悩んでいる人がこの備忘録を参考に解決出来ればと思い、開設しました。温かい目で見てやってください。 ☆コメントどしどし募集中☆
2011年5月20日金曜日
【Joomla1.5系関連】サイト内検索のカスタマイズ
お疲れ様です。
Joomla標準機能である
サイト内検索ですが
プラグインを新たに追加することで
検索対象の拡大が可能です。
今回ですと、Joomlaのシステムデータとは別に
新たにテーブルを一個DBに追加したのですが
このテーブル内のデータも検索対象にしたかったので
プラグインを追加しました。
方法は
ルートフォルダ/plugins/search内にある
content.phpとcontent.xmlをコピー&リネームし
zip形式に圧縮した後、Joomla内でアップロードします。
中に記述するプログラムは、content.phpを参考に
カスタマイズします。
以上
Joomla標準機能である
サイト内検索ですが
プラグインを新たに追加することで
検索対象の拡大が可能です。
今回ですと、Joomlaのシステムデータとは別に
新たにテーブルを一個DBに追加したのですが
このテーブル内のデータも検索対象にしたかったので
プラグインを追加しました。
方法は
ルートフォルダ/plugins/search内にある
content.phpとcontent.xmlをコピー&リネームし
zip形式に圧縮した後、Joomla内でアップロードします。
中に記述するプログラムは、content.phpを参考に
カスタマイズします。
以上
【Joomla1.5系関連】新着記事モジュールの日付のずれについて
お疲れ様です。
今回、Joomla1.5系にて
新着記事表示モジュールを利用すると
日付がずれる(タイムゾーンを日本にしているにもかかわらず標準時間になる)
という現象を解決するために、いろいろ調査した事柄です。
何かの役に立つかもということで
一応残しておきます。
その前に、上記件の解決方法ですが
mod_latestnewsモジュールの
日付表示部分に+9時間するように修正しました。
(あまりいいとはいえませんが・・・)
コードは割愛致します。
ではでは、今回判明した事柄です。
①記事の作成や編集時にDBへデータを保存している箇所
ルートフォルダ/administrator/components/com_content/controller.php
saveContent関数
作成日時等の日時はtoMySQL関数という
MySQLのdatetime形に型を整形している感じです。
また、taskパラメーターによって、保存や適用の
リダイレクト処理もsaveContent関数内で処理もしています。
②toMySQL関数定義ファイル
ルートフォルダ/libraries/joomla/utilities/date.php
toMySQL関数のほかに
タイムゾーンによって日付を加算する処理等も行っているようですが
私の環境(Joomla1.5.22)では管理画面上に表示されている日付と
DBに格納されている日付に相違があります。
このtoMySQLで正しいタイムゾーン値(日本なら+9)が取得されてないため
DBに格納する際は標準時間(ロンドン)で格納されます。
このあたりを修正してみたのですが、なぜか保存や適用をするたびに
作成日時がどんどん+9されてしまいます。
③JFactoryクラス定義ファイル
ルートフォルダ/libraries/joomla/factory.php
これはJoomla内でよく利用されるJFactoryクラスが定義されている場所です。(おそらく)
以上です。
今回、Joomla1.5系にて
新着記事表示モジュールを利用すると
日付がずれる(タイムゾーンを日本にしているにもかかわらず標準時間になる)
という現象を解決するために、いろいろ調査した事柄です。
何かの役に立つかもということで
一応残しておきます。
その前に、上記件の解決方法ですが
mod_latestnewsモジュールの
日付表示部分に+9時間するように修正しました。
(あまりいいとはいえませんが・・・)
コードは割愛致します。
ではでは、今回判明した事柄です。
①記事の作成や編集時にDBへデータを保存している箇所
ルートフォルダ/administrator/components/com_content/controller.php
saveContent関数
作成日時等の日時はtoMySQL関数という
MySQLのdatetime形に型を整形している感じです。
また、taskパラメーターによって、保存や適用の
リダイレクト処理もsaveContent関数内で処理もしています。
②toMySQL関数定義ファイル
ルートフォルダ/libraries/joomla/utilities/date.php
toMySQL関数のほかに
タイムゾーンによって日付を加算する処理等も行っているようですが
私の環境(Joomla1.5.22)では管理画面上に表示されている日付と
DBに格納されている日付に相違があります。
このtoMySQLで正しいタイムゾーン値(日本なら+9)が取得されてないため
DBに格納する際は標準時間(ロンドン)で格納されます。
このあたりを修正してみたのですが、なぜか保存や適用をするたびに
作成日時がどんどん+9されてしまいます。
③JFactoryクラス定義ファイル
ルートフォルダ/libraries/joomla/factory.php
これはJoomla内でよく利用されるJFactoryクラスが定義されている場所です。(おそらく)
以上です。
2011年5月14日土曜日
【Joomla1.5系関連】サイト内検索について
お疲れ様です。
発見しましたので備忘録します。
Joomlaには標準でサイト内検索の機能が利用できます。
モジュールにてその機能を設定しますが
デフォルトだと、コンテンツだけじゃなく、カテゴリやセクションまで
検索対象となります。
つまり空のカテゴリ等があった場合も検索結果に反映されちゃいます。
検索対象をコンテンツだけにする方法ですが
1.プラグイン管理を開きます。
2.タイプ選択にて「search」を選びます。
3.検索-コンテンツ以外を非公開にします。
以上でコンテンツのみに絞る事ができます。
以上
発見しましたので備忘録します。
Joomlaには標準でサイト内検索の機能が利用できます。
モジュールにてその機能を設定しますが
デフォルトだと、コンテンツだけじゃなく、カテゴリやセクションまで
検索対象となります。
つまり空のカテゴリ等があった場合も検索結果に反映されちゃいます。
検索対象をコンテンツだけにする方法ですが
1.プラグイン管理を開きます。
2.タイプ選択にて「search」を選びます。
3.検索-コンテンツ以外を非公開にします。
以上でコンテンツのみに絞る事ができます。
以上
2011年5月6日金曜日
【Joomla1.5系関連】ファビコンの配置について
お疲れ様です。
Joomlaのフェイバリット・アイコン、通称ファビコンについて
備忘録します。
Joomlaサイトでのファビコンの設定ですが
テンプレートフォルダの直下に
「favicon.ico」をアップロードするだけで
可能です。
おそらく、これはテンプレートに書かれている
<jdoc:include type="head" />という
Joomla特有の関数が、favicon.icoの有無で
ファビコンを表示するメタタグを出力しているっぽいからです。
※まだきちんと検証していません!!
情報が入り次第、更新していきたいと思います。
以上
Joomlaのフェイバリット・アイコン、通称ファビコンについて
備忘録します。
Joomlaサイトでのファビコンの設定ですが
テンプレートフォルダの直下に
「favicon.ico」をアップロードするだけで
可能です。
おそらく、これはテンプレートに書かれている
<jdoc:include type="head" />という
Joomla特有の関数が、favicon.icoの有無で
ファビコンを表示するメタタグを出力しているっぽいからです。
※まだきちんと検証していません!!
情報が入り次第、更新していきたいと思います。
以上
2011年4月7日木曜日
【Joomla1.5系関連】サイト内検索の結果表示のフォームをカスタマイズするには
お疲れ様です。
タイトルの件で備忘録します。
以前紹介したスタンダードカテゴリレイアウトと同様なイメージでカスタマイズが可能です。
まずファイルの格納場所ですが。。。
ルートフォルダ/components/com_search/views/search/tmplの
default_form.phpです。
あとはじっくり眺めれば、大体わかります(笑)
以上
タイトルの件で備忘録します。
以前紹介したスタンダードカテゴリレイアウトと同様なイメージでカスタマイズが可能です。
まずファイルの格納場所ですが。。。
ルートフォルダ/components/com_search/views/search/tmplの
default_form.phpです。
あとはじっくり眺めれば、大体わかります(笑)
以上
【Joomla1.5系関連】メニューアイテムのスタンダードカテゴリレイアウトをカスタマイズするには
お疲れ様です。
タイトルの件ですが、今回いじる必要があったので備忘録します。
まず、スタンダードカテゴリレイアウトを生成しているphpファイルの在り処は・・・
ルートフォルダ/components/com_content/views/category/teplの
default_items.phpです
結構長いソースですが、じっくり眺めればたいていわかります(笑)
以上
タイトルの件ですが、今回いじる必要があったので備忘録します。
まず、スタンダードカテゴリレイアウトを生成しているphpファイルの在り処は・・・
ルートフォルダ/components/com_content/views/category/teplの
default_items.phpです
結構長いソースですが、じっくり眺めればたいていわかります(笑)
以上
2011年3月1日火曜日
【Joomla1.5系関連】パンくずモジュールのカスタマイズ方法
お疲れ様です。
今回は、久々にいじったCMSのJoomlaについての備忘録です。
しかしJoomlaといえば、
最近1.6系が正式にリリースされましたが、出たばかりのものは
大抵バグが潜んでいますので、1.5系がまだまだ活躍しそうだなと思います。
件名にもありますが、Joomlaには標準でパンくずを生成してくれる
モジュールが用意されています。
今回もそのモジュールを利用しようと思いましたが、
サイトトップが2つあるという変わったサイトとなっており
現在メニューをいろいろ駆使して(そこらへんは面倒なので省きます。。。)
トップが2つあるように見せかけています。
なので、パンくずモジュールを2つ利用する必要がありますが、基本的に
トップは1つという考えなので、2つモジュールを生成してもパンくずのHOMEを
クリックすると、一つのトップにしかリンクされません。
そこでもう一つのパンくずモジュールは、オリジナルで作成し(殆どコピーですが)
新たにインストールすることでパンくずを2つ使おうという考えに至りました。
オリジナル版ではHOMEのリンクを2つめのトップページ(みせかけの)にする必要が有るため
ファイルをカスタマイズします。方法は下記の通り
1.mod_breadcrumbs(パンくずモジュール)内のhelper.phpを開きます。
2.38行目あたりの$item->link = JURI::base();の部分を
$item->link = "(リンクしたいトップページアドレス)";
に変更します。
以上で完了です。
このJURI::base()がどうやら、トップページを引っ張っているようですね。
以上
今回は、久々にいじったCMSのJoomlaについての備忘録です。
しかしJoomlaといえば、
最近1.6系が正式にリリースされましたが、出たばかりのものは
大抵バグが潜んでいますので、1.5系がまだまだ活躍しそうだなと思います。
件名にもありますが、Joomlaには標準でパンくずを生成してくれる
モジュールが用意されています。
今回もそのモジュールを利用しようと思いましたが、
サイトトップが2つあるという変わったサイトとなっており
現在メニューをいろいろ駆使して(そこらへんは面倒なので省きます。。。)
トップが2つあるように見せかけています。
なので、パンくずモジュールを2つ利用する必要がありますが、基本的に
トップは1つという考えなので、2つモジュールを生成してもパンくずのHOMEを
クリックすると、一つのトップにしかリンクされません。
そこでもう一つのパンくずモジュールは、オリジナルで作成し(殆どコピーですが)
新たにインストールすることでパンくずを2つ使おうという考えに至りました。
オリジナル版ではHOMEのリンクを2つめのトップページ(みせかけの)にする必要が有るため
ファイルをカスタマイズします。方法は下記の通り
1.mod_breadcrumbs(パンくずモジュール)内のhelper.phpを開きます。
2.38行目あたりの$item->link = JURI::base();の部分を
$item->link = "(リンクしたいトップページアドレス)";
に変更します。
以上で完了です。
このJURI::base()がどうやら、トップページを引っ張っているようですね。
以上
登録:
投稿 (Atom)