Hatena::ブログ(Diary)

EC-CUBEのカスタマイズならクロスキューブ!サイト制作メモ このページをアンテナに追加 RSSフィード Twitter

2011-01-17

concrete5が重くなってきたら古いバージョンを消そう。

concrete5のちょっとしたTips
concrete5はページを更新する度にその履歴が「バージョン」として残っていきます。

間違えちゃったり、以前の状況を確認したい時なんかに便利なのですが、この履歴データのせいで、しばらく運用しているとデータベース肥大化していきます。

特にCollectionVersionBlocksとかすごいレコード数になったりします。


なので、

「あれ?最近なんか重くなってきたなー」

と思ったら古いバージョンを消しましょう。データベースからレコードが消えてデータベースが軽くなります。

消し方は、

  1. ページを編集モードにして
    f:id:xross-cube:20110117201114p:image
  2. 履歴」をクリック
    古いバージョン」をクリックすると最新のバージョン以外が選択されるので便利です。
    f:id:xross-cube:20110117201115p:image

    f:id:xross-cube:20110117201116p:image

  3. 削除」をクリック
    f:id:xross-cube:20110117201117p:image

  4. 編集モードを終了。
    f:id:xross-cube:20110117201118p:image

これで古い履歴が全部消えます。ついでにデータベース最適化しておいた方が良いでしょう。

f:id:xross-cube:20110117201119p:image

!注意!戻せませんので必ずバックアップを取ってから作業しましょう。

管理画面からデータベースバックアップが取れます。必ずバックアップを取ってから作業しましょう。

大量のページがあるサイトではかなり面倒

このやり方では1ページづつしか古いバージョンを消せません。
なので大量にページがあると厄介です。

自分でも欲しいので、近い内に全ページの古いバージョンを消すアドオンでも作ろうと思ってます。

もし、「待てないー!」という方はご自分チャレンジされても良いかもしれません。

/concrete/models/collection_version.phpのCollectionVersion::delete()に実際の処理が書いてあります。

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/xross-cube/20110117/p1