JavascriptでサイトURLをちょいと取得する方法(2007/2010対応)

前回「_spPageContextInfo でサイトURLや現在のユーザ情報を取得(SharePoint 2010限定)」というエントリを書いたところ、「つれづれぐさ http://k408.wordpress.com/」さんが別のスクリプトをご呈示いただいた。こちらは2007環境でも動く(ただしユーザ情報は抜けない)

サイトのURLを取得する
とりあえず、SharePointのサイトを開いてこのスクリプトをアドレスバーに張り付けて実行すればサイトのURLが表示されるはず。
javascript:alert(function(){var es=document.getElementsByTagName(‘input’);for(var i=0;i

なるほど、検索ボックスに含まれる情報を抜いている訳ですね。当然、マスターページをカスタマイズして検索ボックスを削除しているような場合(あまり無いと思いますが)は使えません。

話はずれますが、こうして、自分以外の方からフィードバックを頂ける(ことがある)のがブログをやっている最大の醍醐味ですね。凄く嬉しです。感謝。私のエントリが間違っているぞーというようなご指摘でも大歓迎ですので、ぜひ投稿orコメント頂けると光栄です。

さて、実は私も、他に SharePoint 2007 でも使える方法がないものかな、と探してたのですが、こちらも使えそうです:

<script type=”text/JavaScript” language=”JavaScript”>
alert(“L_Menu_BaseUrl:” + L_Menu_BaseUrl);
</script>

この情報も、各画面のソースを読むとその中に含まれています。

<script type=”text/JavaScript” language=”JavaScript”>
<!–
var L_Menu_BaseUrl=”/wssample”;
var L_Menu_LCID=”1041″;
var L_Menu_SiteTheme=””;
//–>
</script>

ざっと確認した範囲では、SharePoint 2007/2010、Office 365のどの画面でも使えそうです(もちろん全部試した訳では有りませんので使えないところはあるかも)

なお、こうなるとユーザ情報もとりたいところなのですが、私の知る限り、SharePoint 2007では無理っぽいです。画面右上の「ようこそ ●●さん」から抜くことは可能ですが、このタグのID値が一定ではなかったり、そもそも同姓同名の問題があったりとあまり実用的ではありません。残念。

「_spPageContextInfo」でサイトURLや現在のユーザ情報を取得(SharePoint 2010限定)


これまでのコメント

  1. […] なお、トラックバックで指摘されているとおり、同姓同名の問題はどうにもならない。 […]

login

Author

中村 和彦(シンプレッソ・コンサルティング株式会社 代表)が「ユーザ視点の SharePoint 情報」を発信します。元大手製造業 SharePoint 運用担当。現SharePoint コンサルタント。お仕事のお問い合わせはこちらまでお願いします。当ブログにおける発信内容は個人に帰属し所属組織の公式発信/見解ではありません。
FB : 中村 和彦
blog: Be・Better!
MS MVP SharePoint 2009/10-2011/9
MS MVP Office 365 2012/10-2014/9