web-dev-qa-db-ja.com

定期メンテナンスについての通知はどうすればいいですか?

Drupal 7.5を使用していて、xの予定日時にWebサイトがメンテナンスモードになることを通知したい。これを行うための最良の方法は何ですか?サーバーメンテナンス通知を投稿するためのオプション、またはそのためのカスタムブロックを作成する必要がありますか?

この超基本的な質問を許してください、しかし私は検索をしました、そしてこれに関する他の質問はより高度でした。

注:このサイトはCommons Profileで実行されており、他の誰かによって開発されています。

3
Christia

modulitis」のリスクを軽減

前の回答で提案された Scheduled Maintenance モジュールの代わりに、 Rules モジュールを使用することもできます。 「定期メンテナンスの通知」にのみ使用できる別のモジュールをインストールする代わりに。

Rules をまだ有効にしていない場合は、おそらく(実際には、かなり確かに)これを使用して、サイトに他の多くの機能を実装できます。それはあなたのサイトが「modulitis」、別名「wayが原因で、サイトの速度を低下させる貢献モジュールが多すぎる ")。

カスタムルールの作成

このカスタムルールを確認してください( Rules エクスポート形式):

{ "rules_announce_scheduled_maintenance" : {
    "LABEL" : "Announce scheduled maintenance",
    "PLUGIN" : "reaction rule",
    "OWNER" : "rules",
    "REQUIRES" : [ "rules" ],
    "ON" : { "init" : [] },
    "IF" : [
      { "data_is" : {
          "data" : [ "site:current-date" ],
          "op" : "\u003E",
          "value" : 1477639800
        }
      },
      { "data_is" : {
          "data" : [ "site:current-date" ],
          "op" : "\u003C",
          "value" : 1477726200
        }
      },
      { "user_has_role" : {
          "account" : [ "site:current-user" ],
          "roles" : { "value" : { "2" : "2" } }
        }
      }
    ],
    "DO" : [
      { "drupal_message" : {
          "message" : "\u003Cstrong\u003EMaintenance upcoming!\u003C\/strong\u003E Please note that access to this site will be limited due to scheduled site maintenance.",
          "type" : "warning"
        }
      }
    ]
  }
}

ルールUIを有効にしている場合は、上記のルールを自分のサイトにインポートできます。このルールが実際に行うことの詳細:

  • ルールは、ユーザー/訪問者がサイトで行うすべての操作に対してトリガーされます(=ルールイベント)(ルールイベントDrupalが使用されているためが使用されているため)。
  • 最初の2つのルール条件チェックは、サイトの現在時刻(GMT)が2016-10-28 07:30:00および2016-10-29 07:30:00
  • 3番目のルール条件は、ユーザーが認証されているかどうかを確認するため、匿名ユーザーには何も起こりません。このルール条件を削除または変更して、ニーズに合わせます。
  • すべてのルール条件が満たされている場合、ルールアクションは次のような内容のメッセージ(警告タイプ)を表示します。

    Maintenance upcoming! Please note that access to this site will be limited due to scheduled site maintenance.

    必要に応じて、メッセージのタイプをWarningからStatus(=情報のみ)に変更するか、実際のメッセージコンテンツを変更します、BTWにはHTMLマークアップを含めることもできます。

このルールの使い方

  • メンテナンスウィンドウが表示されるときは常に、ルール条件の「開始」と「終了」の日付のみを調整します。
  • このルールを永続的に有効のままにするか、ルールを無効にして、このメンテナンスメッセージを表示したい時間枠でのみ有効にすることができます。
  • 「終了」の日付/時刻になると、メッセージは表示されなくなります。このルールを無効にしない(または忘れる)場合でも。

可能な改善

あなたは Rules のすべての力を利用して、このルールをさらに改善することができます。例:

  • (たとえば)「コンテンツが表示された」ときにのみこのルールをトリガーします(ルールイベントを他の適合するイベントに置き換えることにより)。
  • 選択したページにのみ表示します(フロントページのように?)。
  • 特別な条件が満たされた場合、管理者にメールを送信します。
  • 表示されているメッセージを絞り込みます(例:定期メンテナンスの詳細が記載されたページへのハイパーリンク)。
1
Pierre.Vriens

Drupal Coreには、サイトをメンテナンス状態にするオプションが組み込まれていますが、そのままではスケジュールされた日付の前にメンテナンスメッセージを表示するオプションがありません。これを行うには、 Scheduled Maintenance モジュールを使用します。

定期メンテナンスにより、ユーザーは次回のメンテナンスをスケジュールし、サイトの訪問者に事前に警告メッセージを表示できます。

1
arpitr