2017年03月28日
PowerCMSを使用したURLを含む各項目のCSV出力について
報告書などを作成する際に、記事やウェブページのURLの一覧が必要な事があるかと思います。
MTタグを使用すれば、IDやタイトル、そしてURLなどの必要な情報を、CSV形式で保存することが可能です。
今回は簡単にですが、その方法を記載していきます。
また、この方法はMTタグに触ったことがない【Movable Type 初心者向け】の内容となります。
はじめに
以下の情報を抜き出します。
- ページのID
- ページのタイトル
- ウェブページと記事のURL
注意
- この方法は公開されているウェブページと記事のみを抜き出します。
未公開のウェブページと記事については、抜き出すことはできません。 - タイトルに【,(カンマ)】がある場合は、この方法を使用することはできません。
まずは、URLを抜き出したいブログのデザインのテンプレートを選択します。
左メニューのテンプレートをクリックすると、画面上部に【インデックステンプレートの作成】と表示がされますので、そこから作成することができます。
基本的な設定は以下の通りです。
タイトル | なんでも構いません。(今回はHTMLの一覧としています。) |
出力ファイル名 | ○○.csvの表記ならなんでも構いません。(今回はhoge.csvとしています。) |
エンコーディング | このアーカイブをShift_JIS出力するにチェックを入れる。(チェックを入れることで、Shift_JISで出力されます。) |
テンプレートの種類 | カスタムインデックステンプレート(変更はしていません。) |
公開 | 一度のみ、あるいは出力後インデックステンプレートを消す場合は【手動】 常に繰り返し使用する場合は【スタティック(既定)】 今回は【手動】とします。 |
ウェブページ
CSV一覧を抜き出すために必要なタグと簡単に意味を書いておきます。
より詳しい使い方や仕様については以下をご確認ください。
テンプレートタグリファレンス
<mt:Pages>~</mt:Pages> | ウェブページの一覧を表示する。 このタグでID、タイトル、URLのリンクを囲みます。 |
<mt:PageID/> | ウェブページのID表示する。 |
<mt:PageTitle/> | ウェブページのタイトル表示する。 |
<mt:EntryPermalink/> | URLを表示する。 |
記事
<mt:Entries>~</mt:Entries> | 記事を表示する このタグでID、タイトル、URLのリンクを囲みます。 |
<mt:EntryID/> | 記事のIDを表示する。 |
<mt:EntryTitle/> | 記事のタイトルを表示する。 |
<mt:EntryPermalink/> | URLを表示する。 |
ウェブページと記事のタグを【,】で区切り、用意したインデックスプレートに貼り付けます。
PowerCMS設定では、デフォルトで10件のみ出力されます。
10件以外の出力を行う場合には、モディファイアを使用する必要があります。
lastn="N"
Nの部分に指定した数字を入れるとその数だけ抜き出します。(今回は最大値を100にしました)
ちなみに、lastn="0"とすると、全件という意味になります。
<mt:Pages lastn="100"><mt:PageID/>,<mt:PageTitle/>,<mt:EntryPermalink/> </mt:Pages> <mt:Entries lastn="100"><mt:EntryID/>,<mt:EntryTitle/>,<mt:EntryPermalink/> </mt:Entries> |
</mt:Pages>と</mt:Entries>の前を改行することで、ID→タイトル→URLで改行という意味になります。
上記のタグを作成したインデックステンプレートに記載し、一番下の保存と再構築のボタンを押します。
インデックステンプレート一覧のページに戻り、出力ファイル名のhoge.csvの右の丸いアイコン部分をクリックすると、出力データが画面上に表示、あるいは保存する項目がポップアップで表示されますので、ご自分の環境にCSV形式で保存してください。
保存したCSVデータをExcelで開くと以下のように表示されます。
1行目から4行目までがウェブページ【ID,ウェブページタイトル,ウェブページのURL,】
5行目が空欄で出力。
6列目からが記事【ID,記事のタイトル,記事のURL,・・・・・・】
100件で抜き出した場合は、100件分のウェブページ、空欄、100件分の記事がCSVデータとして出力されます。
なお、【このアーカイブをShift_JIS出力する】にチェックを入れていない場合には、そのままExcelで開くと文字化けをしている可能性がありますので、ご注意ください。
まとめ
MTタグをインデックステンプレートに追加することで、簡単にタイトル、URL、そしてIDを取り出すことができました。
私はインデックステンプレートを使用することが初めてだったのですが、この形式なら他の要素も取り出すことができそうなので更にMTタグを学んでみようと思いました。お役に立てれば幸いです。
- カテゴリー
- その他
コメントを投稿する