投稿者「wt」のアーカイブ

4D v11の文字コード

4D v11には、文字コードの扱いを制御する環境設定がある。v13とは異なり、データベース設定も環境設定メニューにあります。

環境設定の「アプリケーション」の「互換性」メニューに「Unicodeモード」というチェックボックスがあります。v11で新しくプロジェクトを作成した場合、Unicodeモードはチェックされていますが、たとえばv2004のプロジェクトをv11にコンバートした場合はUnicodeモードがチェックされていません。

このおかげでどういうことが起こるかというと...

非Unicodeモードでは、Positionコマンドで取得した文字列中のポジションは文字数を示していますが、Substringコマンドでその文字数を切り出すと、すでにUnicodeですので、期待していた長さとバイト数が異なってしまう、現象が起こります。

v11で作成した、Jiro_str_Extractというかなり実績のあるプログラムを、この元v2004の今はv11のプロジェクトにコピーして使ったときに起こりました。Jiro_str_Extractはさんざんテストされていたのに、なぜか変な結果を返す、ポジションを示す数値は合っているのに切り出される文字列が、文字の途中で切れてしまう、という現象が起きます。

【環境設定】→【アプリケーション】→【互換性】で「Unicodeモード」がチェックされていませんでした。これをチェックしたら問題は解決しました。ちなみにv13にコンバートしても問題は解決します。これで気づきました。

サポートにも問い合わせて裏は取りました。古いプロジェクトを扱うときは注意しましょう。

 

ブログのコメント機能をオフにする

コメント機能には次の2つがあります。

1)これからの投稿に対して、

ダッシュボードの設定で「コメントをオフ」にする

2)作成済みの投稿について、

すでに作成されてある投稿のコメント機能をオフにする

 

投稿と固定ページ(postとpage)

英文のマニュアルでは、投稿はpost、固定ページはpage、となっていました。

WordPressは基本的にはpostをやりやすくするツールです。ひとつのポストの履歴をカテゴリー別に分けて表示する機能が基本です。postは時系列に並びます。

一方で、固定ページがあります。投稿のように記事が増えていかないような、会社案内のようなページは固定ページにします。

投稿と固定ページをどう組み合わせて使うかがポイントになります。たとえば固定ページは階層化できるのに、投稿は時系列に並ぶとか、それぞれに特徴があります。

扉ページを固定ページにして、そこにカテゴリーの一覧があってそこからカテゴリーごとにポストを表示したいとか...