Keywords プラグインを利用することで、記事やページの自動タグ付け、概要の自動作成、自動リンクなどを実現できます。これらの機能は、形態素解析など、自然言語処理の技術を活用しています。
以下のブログ記事で、活用方法の一例を紹介していますので、こちらも参考にしてください。
設置とインストール
- pluginsディレクトリに Keywordsディレクトリを設置します。
- システムのプラグインの管理画面で、Keywordsにチェックを入れて有効化します。
- スキーマ管理画面から「keyword」モデルを選択してアップグレードします。
環境変数と初期値
keywords_use_mecab を trueに設定すると、キーワードの判別に形態素解析器 MeCab を利用します。
例えば「京都」をキーワードに指定した時「東京都」を対象外とすることができます。
"keywords_use_mecab" : false,
"keywords_mecab_path" : "/usr/local/bin/mecab",
"keywords_estcmd_path" : "/usr/local/bin/estcmd",
"keywords_mecab_dict_index_path" : "/usr/local/libexec/mecab/mecab-dict-index",
"keywords_mecab_dic_path" : "/usr/local/lib/mecab/dic/ipadic"
プラグイン設定
- 自動的にタグをセット : 同一スコープに登録されたキーワードと一致する文字列を含む時、オブジェクトの保存時に自動的にタグをセットします。
- 自動的にキーワードをセット : 同一スコープに登録されたキーワードと一致する文字列を含む時、オブジェクトの保存時に自動的にキーワードをセットします。
- 自動的に概要を生成 : text(本文) と excerpt(概要)カラムのあるモデルを対象に、text から excerpt を自動生成します。
- 追加文字列 : 作成された概要が設定文字数を超えていた時、指定の文字列を追加します(例 : ...)。
※ タグ、キーワード、概要の自動生成は管理画面からの保存のみに対応しています。データ移行やインポート時には自動でセットされません。
※ 自動的に概要を生成には、Hyper Estraier と MeCab がサーバーにインストールされている必要があります。
※ モデルがタグ付けに対応していない時、モデルにキーワードカラムがない時、そのモデルに対しては設定できません。
※ キーワードの抽出については、大文字小文字を区別しません。
テンプレート・タグ
ブロックタグ
mt:autokeywords (mt:keyword2link)
ブロック内に出現するタグやキーワードに自動的にリンクをセットします。
<mt:setvarblock name="enclosure"><span class="separator"> </span></mt:setvarblock>
<mt:autokeywords replace_once="1" model="tag" min_length="2" enclosure="$enclosure">
<mt:entrybody convert_breaks="auto">
</mt:autokeywords>
タグ属性
- case_sensitive : 指定のある時、キーワードの大文字小文字を区別します。
- model : keywordモデル以外のモデルを利用する時にそのモデル名を指定します。
- name : (keywordモデル以外のモデルを利用する時)keywordモデルの「name」にあたるカラム名を指定します。
- url : (keywordモデル以外のモデルを利用する時)keywordモデルの「url」にあたるカラム名を指定します。
- title : (keywordモデル以外のモデルを利用する時)keywordモデルの「title」にあたるカラム名を指定します。
- class : (keywordモデル以外のモデルを利用する時)classカラムのある時その値でフィルタします。
- tag : urlカラム、permalinkを利用せずに指定したテンプレート・タグをビルドします。
- no_title : 指定のある時、title属性を追加しません。
- target_blank : 指定のある、時リンクに'target="_blank"'を追加します。
- add_attr : a要素に追加する属性を指定します。
- replace_once : 指定のある時、最初に出現した箇所のみをリンクに置き換えます。
- word_boundary : 指定のある時、単語境界と隣接するキーワードのみを置き換えます(※)。
- min_length : 指定した文字数以上のワードのみをリンクに置き換えます。
- enclosure : 指定した文字列でタグを囲います。
- prefix : タグの前に指定した文字を追加します。
- postfix : タグの後に指定した文字を追加します。
- include_workspaces : 指定のスコープのキーワードを対象にします(カンマ区切りの数字または'this'または'children')。
- exclude_workspaces : 指定のスコープのキーワードを除外します(カンマ区切りの数字)。
- workspace_id : 特定のworkspaceのキーワードを対象にします。
- workspace_ids : 'include_workspaces'のエイリアスです。
※ word_boundary 指定のある時「PowerCMS X 」「PowerCMS X!」「PowerCMS X?」は対象になりますが「PowerCMS XX」は対象になりません。日本語キーワードについては影響はありません。