SharePoint 2010 「現在のページは、元のテンプレートからカスタマイズされています。 テンプレートの状態に戻します。 」

こんにちは、奥田です。
今日は SharePoint Designer 2010 でページをカスタマイズしたときに遭遇した問題点の 解決方法 Tips です。

まず SPD で行ったカスタマイズについてですが、
SharePoint 2010 で、トップページに SharePoint Designer 2010 で変更を加えました。
行った内容は PlaceHolderMain 内に <div> タグをいれ、その中に <img> タグをいれただけです。
(横幅いっぱいにキレイにおさまるよう用意したトップ画像を、トップページのコンテンツエリア内にきっちりおさめたかったんです。ブラウザーでの Wiki 編集で画像を入れるとどうしても横の padding が気になり。。
)

SharePoint 2010 では <SharePoint:EmbeddedFormField> 内の内容は SharePoint Designer 2010 で編集できるようになっていますが、それ以外の内容は、ソースコードが既定で黄色の背景となっており詳細モードにしないと編集できません。
今回 <PlaceHolderMain> 内にソースコードを追加したかったため、詳細モードにし、上記編集を行いました。

すると、「現在のページは、元のテンプレートからカスタマイズされています。テンプレートの状態に戻します。 」 とステータスバー内にメッセージが表示され、「テンプレートの状態に戻します」 をクリックすると、編集した内容が消えてしまいます。このメッセージが管理者にのみ表示されるのだったらまだいいのですが、、閲覧や投稿権限のユーザーにも表示されてしまいます。
image11

解決方法として、下記を行ってみました。
・ マスターページ内の下記ソースコードに赤字部分を追加。
ステータスバーが表示される <div> タグに ms-hide スタイルを適用させて非表示に。
下記タグをコメントアウトでもいいと思います。

<div id=”s4-statusbarcontainer” class=”ms-hide”>
<div id=”pageStatusBar” class=”s4-status-s1″>
</div>
</div>

ただ、この方法だとステータスバー全体が非表示となるため、今回消したいメッセージだけではなくステータスバー全体が非表示となってしまいます。
ステータスバー全体を非表示にするのが問題となるようであれば、このメッセージを含む場合のみ、 id が “s4-statusbarcontainer” の div タグを非表示にするような script を記述してもいいと思います。

詳細モードでページを編集することもままあることだと思うので、サイト コレクションレベルとかサイトレベルで、ステータスバーに表示するメッセージを消せるよう設定があればいいのに。。と思っちゃいました。

ということで、SharePoint Designer 2010 で、ページを詳細モードで編集した際の 「現在のページは、元のテンプレートからカスタマイズされています。テンプレートの状態に戻します。 」 メッセージを消す方法についてでした。

2011/02/07 追記

奥田理恵