==================================
OpenPNE プラグインインストール手順
==================================

はじめに
========

OpenPNE 3 のプラグインをインストールおよびアンインストールするための手順を説明するものです。

以下ではインストール・アンインストールの対象となるプラグイン名の例として opExamplePlugin を使用します。

インストール
============

インストール方法には2つの方法があります。プラグインチャンネルサーバーへ登録されているプラグインのインストールは opPlugin:install によるインストールが推奨されます。

opPlugin:install によるインストール
-----------------------------------

インストールコマンドの実行
++++++++++++++++++++++++++

::
  $ ./symfony opPlugin:install opExamplePlugin

データベースへの変更を反映
++++++++++++++++++++++++++

Doctrine を利用している場合のみ

::
  $ ./symfony openpne:migrate --target=opExamplePlugin --no-update-plugin

手動インストール
----------------

プラグインのソースコードを設置
++++++++++++++++++++++++++++++

サーバー上の plugins ディレクトリにプラグインのソースコードを設置します。

データベースへの変更を反映するための準備
++++++++++++++++++++++++++++++++++++++++

Doctrine を利用している場合のみ

以下の SQL を実行します。

::
  INSERT INTO sns_config (name, value) VALUES ('opExamplePlugin_needs_data_load', '1');

データベースへの変更を反映
++++++++++++++++++++++++++

Doctrine を利用している場合のみ

::
  $ ./symfony openpne:migrate --target=opExamplePlugin --no-update-plugin

アンインストール
================

opPlugin:uninstall によるアンインストール
-----------------------------------------

openpne:install コマンドで自動的にインストールされたプラグインや opPlugin:install コマンドでインストールされたプラグインは、opPlugin:uninstall コマンドを利用してアンインストールすることができます。

アンインストールコマンドの実行
++++++++++++++++++++++++++++++

::
  $ ./symfony opPlugin:uninstall opExamplePlugin

Doctrine の自動生成ファイルの再生成
+++++++++++++++++++++++++++++++++++

Doctrine を利用している場合のみ

::
  $ ./symfony doctrine:build --all-classes

キャッシュの削除
++++++++++++++++

::
  $ ./symfony cc

データベース上のテーブル削除
++++++++++++++++++++++++++++

データベース上のテーブルは削除されませんので、不要であれば手動で削除してください。

手動アンインストール
--------------------

opPlugin:uninstall が利用できない場合は、手動でのファイル削除によりプラグインを削除することになります。

プラグインのソースコードを削除
++++++++++++++++++++++++++++++

::
  $ rm -r plugins/opExamplePlugin

Doctrine の自動生成ファイルを削除
+++++++++++++++++++++++++++++++++

Doctrine を利用している場合のみ

::
  $ rm -r lib/{model,form,filter}/doctrine/opExamplePlugin

Doctrine の自動生成ファイルの再生成
+++++++++++++++++++++++++++++++++++

Doctrine を利用している場合のみ

::
  $ ./symfony doctrine:build --all-classes

キャッシュの削除
++++++++++++++++

::
  $ ./symfony cc

データベース上のテーブル削除
++++++++++++++++++++++++++++

データベース上のテーブルは削除されませんので、不要であれば手動で削除してください。