あなたの数値フォーマットの使用はあなたが探している素晴らしいフォーマットを得るために正しいものでした。DBのフォーマットの変更に関して直面している問題は、数値をフォーマットしてそれ自体を再保存していることです。
例えば:
$count = 5000;
$count = number_format($count);
//$count is no longer equal to 5000, it is now a string 5,000
一時変数を使用してみてください。そうすれば、元の$ count変数は変更されず、データベースに書き戻すときに、希望の形式のままになります。
例えば:
$count = 5000;
$tmpCount = 0;
$tmpCount = number_format($count);
// $count is still 5000, and $tmpCount now holds the value 5,000.
コードの更新バージョン。コンマ区切りの値を保持するメタのみが必要だと思いますか?
function setPostViews($postID) {
//Set initial variables
$count_key = 'post_views_count';
$tmpCount = 0;
$count = get_post_meta($postID, $count_key, true);
if($count == '') {
$count = 0;
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
} else {
$count++;
//Set tmpCount variable to hold comma separated value
$tmpCount = number_format($count);
//Comma separated value is passed into your function
update_post_meta($postID, $count_key, $tmpCount);
}
}
それはあなたが望んでいたことでしたか?または、ユーザーに表示するときにこの数値のみをこの方法でフォーマットしたいが、データベースを適切な状態に保つ(コンマ区切りではない)場合は、データベースにクエリを実行した後、両方のデータベース値を保存し、コンマ区切りの変数をIとまったく同じように作成します上記を実行しました。次に、任意のdb関数で$ count変数を参照し、任意のユーザー出力関数で$tmpCount変数を使用します。
繰り返しになりますが、それがあなたの質問に答えることを願っています。そうでない場合は、明確にしてください。