Base自分用のナレッジベース。Server、オープンソース系のシステムやフリーソフトに関する情報、iPhone、Androidスマホ便利情報など役立つ情報などを覚書しておくためのブログ。リニューアルされました。リダイレクトされます。2.0.1」のホーム画面や検索結果画面の記事(ナレッジのコンテンツ)のタイトル下に表示される概要(記事の抜粋)が日本語化した際に表示されなくなる場合の対処方法について覚書。日本語の記事は「KBPublisher」では記事タイトルの下に表示されるはずの記事の抜粋が表示されない。原因としては、過去の記事「KBPublisher:オープンソースのナレッジベース「KBPublisher」を日本語環境で使用するときの問題点」でも記述したが、抜粋表示のための処理の中で使われているSUBSTRING_INDEX関数の使い方が日本語向きではないためである。従って、このSUBSTRING_INDEX関数の引数を変更して日本語向きに変える。"kb\client\inc"フォルダのKBClientModel.phpファイルをメモ帳などのテキストエディタで開く。409行目の以下の行を修正する。次に"kb\client\inc"フォルダのKBClientSearchModel.phpファイルを開く。24行目の以下の行を修正する。次に「KBPublisher」の管理ページにログインする。URL:http://サーバー名/kb/adminデフォルトユーザー名:adminデフォルトパスワード:demo管理画面上部のメニューの[設定]をクリックする。設定ページが開くので[Knowledgebase]タブの[プレビュー設定:]の[記事の文字数制限:]の値を300に変更する。修正内容の意味は、デフォルトでは「記事中の70回目の半角スペースから前までの文章を記事の抜粋として使う」という設定から「記事中に初めて出てきた改行コードの前までの文章を記事の抜粋として使う」に変更したことになる。日本語は英語と異なり単語間をスペースで区切るようなルールがある言語ではないため、半角スペースというのはあまり意味がない。日本語の文章の区切りを表すのは「。」と考えられるが、PHPの関数の引数に全角文字を使いたくなかったのと、「。」の前で切られてしまうのを防ぐために改行コードを区切りとして使用した。記事の構成によっては、改行コードが必ずしも文章の区切りとして正しいとは言えないが、他に明確に文章の区切りを表せるものがなかったため改行コードを用いた。概要文の文字数については、300という指定をしたが、この設定は色々調節してみて決めてほしい。ホーム画面ではきちんと概要が表示されても、検索結果画面では表示されない場合があって、原因もまだ判明していないので暫定方法とした。端末にAPNが正しく設定されていません。(11/25)プロフィールこのブログの中の人:billyboyこのブログを見に来てくれてありがとうございます。このブログの中の人はExcel、AccessのVBAに関するカスタマーサポート、技術ドキュメントのの作成業務を経験後、開発系SEを経て現在は金融系企業のシステム運用/保守SEとして働いています。当初自分が困ったときに解決した方法や社内/外からの技術的な問い合わせに回答した時に作ったプログラムなどを自分用の備忘録としてこのブログを開設しました。たくさんの方に見に来ていただけてることに気づいてからはなるべく誰が見てもわかるような記事内容にすることを意識して書いています。