エントリー
freoのエントリーとページの管理画面の状態のカスタマイズ
- カテゴリー:管理画面
- タグ:freoテンプレート
デフォルトのfreoのエントリーとページの管理画面の状態の欄では、
- 承認が"未承認"なら ⇒「未承認」
- 状態が"公開"なら ⇒「公開」
- 状態が"未公開"なら ⇒「未公開」
- 状態が"予約公開"なら ⇒「予約公開」
となっていますが、公開終了日時を指定していたり、予約公開の場合は、実際に公開されているかどうかは、作業欄に「確認」のリンクがあるかないかで判断しなくてはなりません。
これを管理画面にわかりやすく表示されるようカスタマイズしてみました。
- 承認が"未承認"なら ⇒「未承認」…①
- 状態が"未公開"なら ⇒「未公開」…②
- 状態が"公開"、公開終了が"指定する"、既に公開終了日を過ぎていたら ⇒「公開終了」…③
- 状態が"公開"、公開終了が"指定する"、公開終了日の当日なら ⇒「何時:何分:何秒公開終了予定」…④
- 状態が"公開"、公開終了が"指定する"、公開終了日の当日でないなら ⇒「何年/何月/何日公開終了予定」…⑤
- 状態が"公開"、公開終了が"指定しない"なら ⇒「公開」…⑥
- 状態が"予約公開"、公開日を過ぎており、公開終了が"指定する"、既に公開終了日を過ぎていたら ⇒「公開終了」…⑦
- 状態が"予約公開"、公開日を過ぎており、公開終了が"指定する"、公開終了日の当日なら ⇒「何時:何分:何秒公開終了予定」…⑧
- 状態が"予約公開"、公開日を過ぎており、公開終了が"指定する"、公開終了日の当日でないなら ⇒「何年/何月/何日公開終了予定」…⑨
- 状態が"予約公開"、公開日を過ぎており、公開終了が"指定しない"なら ⇒「公開中」…⑩
- 状態が"予約公開"、公開日がまだ来てないなら ⇒「予約公開」…⑪
すると管理画面の表示(エントリーの丸数字は上記の条件に合わせています)で
だった部分が
になります。
エントリー管理の場合
templates/internals/admin/entry.html の94行目あたりにある
<td><!--{if $entry.approved == 'no'}-->未承認<!--{elseif $entry.status == 'publish'}-->公開<!--{elseif $entry.status == 'private'}-->未公開<!--{elseif $entry.status == 'future'}-->予約公開<!--{/if}--></td>
の部分を、
<td><!--{if $entry.approved == 'no'}-->未承認<!--{elseif $entry.status == 'private'}-->未公開<!--{elseif $entry.status == 'publish'}--><!--{if $entry.close}--><!--{if $entry.close|date_format:'%Y%m%d%H%M%S' <= $smarty.now|date_format:'%Y%m%d%H%M%S'}-->公開終了<!--{else}--><!--{if $entry.close|date_format:'%Y%m%d' == $smarty.now|date_format:'%Y%m%d'}-->{$entry.close|date_format:'%H:%M:%S'}<br><!--{else}-->{$entry.close|date_format:'%Y/%m/%d'}<br><!--{/if}-->公開終了予定<!--{/if}--><!--{else}-->公開<!--{/if}--><!--{elseif $entry.status == 'future'}--><!--{if $entry.datetime|date_format:'%Y%m%d%H%M%S' <= $smarty.now|date_format:'%Y%m%d%H%M%S'}--><!--{if $entry.close}--><!--{if $entry.close|date_format:'%Y%m%d%H%M%S' <= $smarty.now|date_format:'%Y%m%d%H%M%S'}-->公開終了<!--{else}--><!--{if $entry.close|date_format:'%Y%m%d' == $smarty.now|date_format:'%Y%m%d'}-->{$entry.close|date_format:'%H:%M:%S'}<br><!--{else}-->{$entry.close|date_format:'%Y/%m/%d'}<br><!--{/if}-->公開終了予定<!--{/if}--><!--{else}-->公開中<!--{/if}--><!--{else}-->予約公開<!--{/if}--><!--{/if}--></td>
に変更(緑字を赤字に)します。
ページ管理の場合
templates/internals/admin/page.html の99行目あたりにある
<td><!--{if $page.approved == 'no'}-->未承認<!--{elseif $page.status == 'publish'}-->公開<!--{elseif $page.status == 'private'}-->未公開<!--{elseif $page.status == 'future'}-->予約公開<!--{/if}--></td>
の部分を、
<td><!--{if $page.approved == 'no'}-->未承認<!--{elseif $page.status == 'private'}-->未公開<!--{elseif $page.status == 'publish'}--><!--{if $page.close}--><!--{if $page.close|date_format:'%Y%m%d%H%M%S' <= $smarty.now|date_format:'%Y%m%d%H%M%S'}-->公開終了<!--{else}--><!--{if $page.close|date_format:'%Y%m%d' == $smarty.now|date_format:'%Y%m%d'}-->{$page.close|date_format:'%H:%M:%S'}<br><!--{else}-->{$page.close|date_format:'%Y/%m/%d'}<br><!--{/if}-->公開終了予定<!--{/if}--><!--{else}-->公開<!--{/if}--><!--{elseif $page.status == 'future'}--><!--{if $page.datetime|date_format:'%Y%m%d%H%M%S' <= $smarty.now|date_format:'%Y%m%d%H%M%S'}--><!--{if $page.close}--><!--{if $page.close|date_format:'%Y%m%d%H%M%S' <= $smarty.now|date_format:'%Y%m%d%H%M%S'}-->公開終了<!--{else}--><!--{if $page.close|date_format:'%Y%m%d' == $smarty.now|date_format:'%Y%m%d'}-->{$page.close|date_format:'%H:%M:%S'}<br><!--{else}-->{$page.close|date_format:'%Y/%m/%d'}<br><!--{/if}-->公開終了予定<!--{/if}--><!--{else}-->公開中<!--{/if}--><!--{else}-->予約公開<!--{/if}--><!--{/if}--></td>
に変更(緑字を赤字に)します。
【テンプレートの条件分岐の解説(エントリーの場合)】
<!--{if $entry.approved == 'no'}-->未承認
//①承認が"未承認"なら ⇒「未承認」
<!--{elseif $entry.status == 'private'}-->未公開
//②状態が"未公開"なら ⇒「未公開」
<!--{elseif $entry.status == 'publish'}-->
//状態が"公開"なら
<!--{if $entry.close}-->
//公開終了が"指定する"なら
<!--{if $entry.close|date_format:'%Y%m%d%H%M%S' <= $smarty.now|date_format:'%Y%m%d%H%M%S'}-->公開終了
//③既に公開終了日を過ぎていたら ⇒「公開終了」
<!--{else}-->
//公開終了日がまだ過ぎていないなら
<!--{if $entry.close|date_format:'%Y%m%d' == $smarty.now|date_format:'%Y%m%d'}-->{$entry.close|date_format:'%H:%M:%S'}<br>
//④公開終了日の当日なら ⇒「何時:何分:何秒」<改行>
<!--{else}-->{$entry.close|date_format:'%Y/%m/%d'}<br><!--{/if}-->
//⑤公開終了日の当日でないなら ⇒「何年/何月/何日」<改行>(条件終わり)
公開終了予定<!--{/if}-->
//「公開終了予定」(条件終わり)
<!--{else}-->公開<!--{/if}-->
//⑥公開終了が"指定しない"なら ⇒「公開」(条件終わり)
<!--{elseif $entry.status == 'future'}-->
//状態が"予約公開"なら
<!--{if $entry.datetime|date_format:'%Y%m%d%H%M%S' <= $smarty.now|date_format:'%Y%m%d%H%M%S'}-->
//既に公開日を過ぎていたら
<!--{if $entry.close}-->
//公開終了が"指定する"なら
<!--{if $entry.close|date_format:'%Y%m%d%H%M%S' <= $smarty.now|date_format:'%Y%m%d%H%M%S'}-->公開終了
//⑦既に公開終了日を過ぎていたら ⇒「公開終了」
<!--{else}-->
//公開終了日がまだ過ぎていないなら
<!--{if $entry.close|date_format:'%Y%m%d' == $smarty.now|date_format:'%Y%m%d'}-->{$entry.close|date_format:'%H:%M:%S'}<br>
//⑧公開終了日の当日なら ⇒「何時:何分:何秒」<改行>
<!--{else}-->{$entry.close|date_format:'%Y/%m/%d'}<br><!--{/if}-->
//⑨公開終了日の当日でないなら ⇒「何年/何月/何日」<改行>(条件終わり)
公開終了予定<!--{/if}-->
//⇒「公開終了予定」(条件終わり)
<!--{else}-->公開中<!--{/if}-->
//⑩公開終了が"指定しない"なら ⇒「公開中」(条件終わり)
<!--{else}-->予約公開<!--{/if}-->
//⑪公開日がまだ来てないなら ⇒「予約公開」(条件終わり)
<!--{/if}-->
//(条件終わり)
※もっときめ細かくしようとするとさらに条件分岐が複雑になるのでこのへんで...(^^ゞ
関連エントリー
- 2023/09/05 freoのプロフィールやコメントでGravatarのアバターを表示する方法
- 2021/11/14 ショッピングカートプラグインの商品配送方法・料金などの変更
- 2018/06/10 freo用markItUp!拡張版の配布
- 2018/05/12 freoのエントリーのタグ投稿を楽にする方法
- 2018/03/16 freoのエントリーとページの編集画面で添付ファイルとイメージの画像を表示する方法
- 2018/03/16 freoのエントリーとページの編集画面でオプションの画像を表示する方法
- 2018/02/09 freoのエントリーとページの管理画面に閲覧制限情報を表示する
- 2017/06/10 freoのtablesorter.jsを最新版にしてメディアの挿入ファイルを更新日時の新しいもの順に並べる
- 2017/06/10 freoのコメント登録フォームを折りたたむボタン
- 2017/06/10 freoをスマートフォンから見た時にリストのリンクなどをボタン化する
コメント
- コメントはまだありません。
コメント登録
- コメントを入力してください。
- 一旦登録したコメントは、あとで編集できませんのでご注意下さい。