Xoops作業メモ

投稿者: | 2009年3月10日

講義関連サイトをXOOPS Cube 2.1.6にて運用開始。以前はインストールにも結構手間取ったが、一応無難に動いている。楽にインストールできるホダ塾ディストリビューションというのを使った。
 リンク集はWebLinksというモジュールを追加インストール。使い勝手はかなりいい。
 表示をカスタマイズするには、Altsysというモジュールからの操作が便利。このAltsysが無かった頃、モジュールやらテンプレートやらという言葉にかなりやられてしまった。が、権限の管理なども含め、随分とやりやすくなっている。
 モジュールの表示を少し変更する程度なら、Altsysのテンプレート管理でチョコチョコッと編集すれば済んだ。WebLinksについても、検索フォームやメニューの配置換えはAltsysの範囲で片付いた。
 ただ、WebLinksの細かなところに手を入れるには、おそらくファイルを直接操作する必要がある(のだと思う)。たぶん現在はここに書いてある状態なんだと思う(作者さんのところのフォーラム)。
 リンク集のうち、個別リンク先を紹介するページ(/modules/weblinks/singlelink.php?lid=○)の表示をカスタマイズするのに苦労した。モジュールをアップデートしたら、この作業を再びやらんといかんのかなあ、ということで、作業メモ。
 カスタマイズしたいのは、最終更新日欄。更新日といいながら時刻まで表示されるが、そこまで要らないし・・・、ということで、表示は日付のみにしたい。調べた限り、かなり古いバージョンの頃の対処法(同じフォーラム)しか見当たらなかった。ただ、そこから類推してファイルを探したら、↓これがたぶん該当。
/modules/weblinks/templates/parts/weblinks_link_single.html
を編集。このファイルの <{$link.update_middle}> という部分が最終更新日を表示する部分で、middleが表示の細かさを規定していると思われ。/modules/weblinks/classにあるweblinks_link_view_basic.phpというファイルを見ると、

$this->set(‘update_long’, formatTimestamp($time_update, ‘l’) );
$this->set(‘update_middle’, formatTimestamp($time_update, ‘m’) );
$this->set(‘update_short’, formatTimestamp($time_update, ‘s’) );
$this->set(‘update_mysql’, formatTimestamp($time_update, ‘_mysql’) );

とあったので、先のweblinks_link_single.htmlのmiddleをshortに置き換え。ついでに{$link.time_expire_middle}もshortに置き換え。
 WebLinksの管理画面に戻って、「テンプレート のコンパイル済みキャッシュのクリア」をしてから(これをしないと更新されない)該当ページを再表示したら日付のみになってて万歳。他にいい方法があるのかもしれないし、正しい手順かどうか不安は残る。作者さんの説明を探せば出てきたのかもしれないけど、結果オーライということで、とりあえずホッ。
 Xoops Cubeはかなり使いやすいという印象。外部向けに表示するものと、自分用ポータルとして表示するものとに権限で分けられるから、その方向で作業中。