[Sitecore][Page Editor]XHTMLの検証エラー

最近Sharepointのインポートをばっかりやっていました。インポートしたコンテントがXHTML検証エラーがばっかりだったので、この古い問題に書いてみたいと思いました。 最初にこのXHTML検証エラーをみたのはがサイトコアバージョン5でした。 これはサイトコアのディフォルト設定で有効なXHTMLドキュメントであるかどうかの検証が有効となっています。 そもそも、サイトコアが使用しているXMLスキーマは7.2となっても変わっていません。   対策として、お客さんによって、検証を外すのは一番簡単だけど、基本的にお客さんからの要求がない限り、エラーとなるタグをこのXSDに追加しているのは現状です。 HTML5を主に使用している場合、 html_5.xsdを参照することをすすめます。 http://blogs.msdn.com/b/webdev/archive/2009/11/18/html-5-intellisense-and-validation-schema-for-visual-studio-2008-and-visual-web-developer.aspx 私の場合はSharePointからのインポートなので、エラーとなるタグを順番に追加することにしました。ただ、コンテントはたくさんインポートしているので、下記のコードでエラーが有るアイテムをリストして、そして、順番にエラーが発生するタグを追加した。 <%@ Page Language=”C#” AutoEventWireup=”true” CodeBehind=”GetValidationErrors.aspx.cs” %> <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”> <html xmlns=”http://www.w3.org/1999/xhtml”> <head runat=”server”> <title></title> </head> <body> <form id=”form1″ runat=”server”> <div> <asp:Literal runat=”server” ID=”ltlError” /> </div> </form> </body> </html>   using System; using System.Linq; using System.Web.Caching; using Sitecore.Data; using Sitecore.Data.Items; using Sitecore.Data.Validators; […]

[Sitecore][ライブラリ]Sitecore.StringUtilクラスにある便利な関数を見てみる

よくアイテムの紹介が長くなる場合にそれを一定の長さにして最後に”…”を追加する場合あります。同僚のコードを見たらsubstringをつかって長さを制限し、最後に”…”を追加しています。これはサイトコアのSitecore.StringUtilクラスにすでにあります。案外それを使われていないようです。 ここでよく使われているいつくかをリストします。 StringUtil.Clip(string text, int length, bool ellipsis) 指定した位置でのテキストをクリップし、指定によって、…省略記号を追加します。 string s0 = StringUtil.Clip(“Hello world”, 5, false); // “Hello” string s1 = StringUtil.Clip(“Hello world”, 5, true); //”He…” StringUtil.Capitalize(string text) 最初の文字を大文字にします。 string text = MainUtil.Capitalize(“HELLO WORLD.”); // “Hello world” string text = MainUtil.Capitalize(“HELLO. HOW ARE YOU?”); // “Hello. how are you?” URL関連 EnsurePostfix(char postfix, string value) 文字列が特定のPostfixを持っていることを保証します。 EnsurePrefix(char prefix, […]

[sitecore][database][performance]データベースのクリーニング

概要:データベースのクリーニングについてのメモ書きです。 どのサイトを公開する前また公開後に定期的にパフォーマンスチューニングを行います。ここに私はよく使うドキュメントのショットカットやよく使う手順をクイックメモ書きの感じでまとめてみました。パフォーマンスチューニングする際に欠かせないのはこのCMS パフォーマンスチューニングガイドです。 サイトコア 言語 Sitecore CMS 6.0 – 6.4 日本語 Sitecore CMS 6.0-6.6 英語 Sitecore CMS 7.0 以降 日本語 *日本語6.0-6.6のバージョンが見つからなかった。 1.SQL Server インデックスの断片化レベルのチェック 2.SQL Server メンテナンス プランのチェックメンテナンス プランがスケジュール通りに実行されていたかどうかを確認する。   使用するサーバによってインデックス再構築がキープできない場合はインデックスの再構築をサイトへのアクセスの低い時間帯にて行います。   3. サイトコアにてリンクデータベースを再構築し、データベースをクリーンアップします。 4. 検索インデックスを再構築します。  環境設定にもよりますが、もし、CMまたCDサーバーにて、検索の結果が一致しない場合、インデックスのファイルが破壊いている可能性があるので、CDサーバー上にあるファイルを一度削除して、再構築します。    *CD サーバー上MASTERデーターベースがない場合は下記のいくつかの方法でインデックスを再構築します。 CD サーバー上にMasterデータベースの接続がある場合サイトコアログインし、インデックスビューアにて再構築します。 CD サーバー上にMasterデータベースの接続がない場合 A:サイトコアサポートツールボックスを使用するインデックスを再構築します。 B: サイトコアサポートツールボックスを使用せず、このファイルスクリプト(Alex Shyba さんが書いたもの)    ここからダウンロードして、使用しでもいい。 C: コンソールアップを作って、CM上にあるインデックスファイルをCDへコピーします。これをスケジュールで毎晩同期します。 サイトコア7以降の場合はJhonWestさんのこのブログを参照してください。 Sitecoreの7:インデックスの更新戦略また、Sitecoreの検索と […]