Geeklogの管理画面で記事一覧に列を追加する

シェアする

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存

Geeklogで記事一覧に任意の列を追加する方法


わたくし、Geeklogの記事管理画面(story.php)で記事一覧を表示する際に、編集アイコン列の隣に新しい列を挿入したかったんです。

結論

story.phpで列の定義を行い、lib-admin.phpで各行の処理を定義する。
story.php(161行目あたり)
/member_geeklog/public_html/admin/story.php
<?php
function liststories()
(略)
$header_arr = array(
array('text' => $LANG_ADMIN['edit'], 'field' => 'edit', 'sort' => false));
$header_arr[] = array('text' => 'プレビュー', 'field' => 'pview', 'sort' => false); //(*1)
$header_arr[] = array('text' => $LANG_ADMIN['title'], 'field' => 'title', 'sort' => true);
(略)
?>
(*1)プレビュー用列の追加。"pview"をここで新規に定義し、lib-admin.php で各行の処理を定義する。
lib-admin.php(795行目あたり)
/member_geeklog/geeklogsys/system/lib-admin.php
<?php
function ADMIN_getListField_stories($fieldname, $fieldvalue, $A, $icon_arr)
(略)
switch($fieldname) {
case "unixdate":
$curtime = COM_getUserDateTimeFormat ($A['unixdate']);
$retval = strftime($_CONF['daytime'], $curtime[1]);
break;
//記事一覧にpview列用の行を追加する処理(*2)
case "pview":
$retval =  "<a href='http://hoge.com/pview.php?id={$A['sid']}'>LINK</a>";
break;
//--ここまで
(略)
?>
(*2) story.phpで定義した"pview"の場合の処理をcase文に追加。

経緯

うちの環境は、共通の記事IDをもとに、別システムとも連動しているので、その別システムでのプレビューを見るためにリンクが必要だったんです。

つまり、記事のタイトル行のプレビューとは別に任意の列を追加する必要がありました。

最初、layoutにあるテーマ(professionlal)の admin/lists/list.thtml と admin/lists/listitem.thtml をいじれば楽勝と思ったのですが、テーブルの中身(th,tdタグ)はテンプレート化されていなくて…。

で、本体をいじることに。

関連記事

簡易改訂版LolipopにGo-Pearをインストールする手順... Lolipopのユーザー専用ページから----を"On"→"Off"に変更する(後で戻します) Go-Pearの最新をダウンロード&従来通りインストール インストール後、まだGo-PEARの設定画面は開かない インストール先に作成されるindex.php(Go-Pearの設定画面ファイ...
”go-pear”でPEARパッケージが検索できなくなった... TELNETが使えないロリポップなどで重宝していた、PEARのWeb版パッケージマネージャー"go-pear"ですが、Lolipopサーバー(コロリポ・プラン)で最新のgo-pearをダウンロードしてインストールしたところ、"Package Search"からパッケージを検索してもヒットしない(...

スポンサーリンク
レクタングル(大)広告

シェアする

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存
スポンサーリンク
レクタングル(大)広告