取り込まれた値が配列とみなされているようですね。
CSVを書き出するときに、オプション指定ですべてのテキストセルをクオートで囲む設定になっていますか?
(Libre Officeの場合、Save As > “Edit filter settings”にチェック > “Quote all text sells”にチェック)
この状態で手元の環境にインポートしてみたところ、ちゃんとテキストとして取り込まれました。もしならない場合は何か設定が違ったりしているかもしれないので、もう少し詳細を知りたいです。
もう一つのアプローチとして、数値は文字としてじゃなく数値として扱いたい(計算とかに使いたい)場合、入力はカンマ無しでおこなって、PHPのnumber_format関数でカンマを出力時に足すという方法もあります。
$cf_sample = SCF::get( 'sample' );
echo number_format( $cf_sample );
トピック投稿者
natasha
(@natashanatashanatashanatasha)
mypacecreator様
素早い回答、本当にありがとうございます。
> CSVを書き出するときに、オプション指定ですべてのテキストセルをクオートで囲む設定になっていますか?
> (Libre Officeの場合、Save As > “Edit filter settings”にチェック > “Quote all text sells”にチェック)
これはしていますが、だめみたいです・・・
そして、これはLibreOfficeの使い方になると思うのですが、
1. 手入力でカンマを入れようとしてもカンマが消える。
2. セルの書式設定でカンマを入れても、次開くと書式設定が消えている。(だが、この状態でWPにインポートすると「Array」と表示される。)
3. 2のファイルを再度開いて上書き保存するとカンマが完全に消えてWPに取り込んでもテキストとして表示される。
という動きをするのでもしかするとこれが影響しているのかもしれません。
> もう一つのアプローチとして、数値は文字としてじゃなく数値として扱いたい(計算とかに使いたい)場合、入力はカンマ無しでおこなって、PHPのnumber_format関数でカンマを出力時に足すという方法もあります。
こちらの方法で、今回の要件は解決できました!
前半の問題はWordPressの問題ではないのですが・・・もしももしもよければヒントをいただけると嬉しいです。
ありがとうございました。
とりあえず2つ目の方法がお役にたってよかったです!
1. 手入力でカンマを入れようとしてもカンマが消える。
これ、私も最初にその状態になったので、セルの書式設定でフォーマットを文字列に設定したらカンマも反映できました。(一旦閉じて再度開くのは試してないですが)
このあたりの挙動に違いがあるのかもしれませんね…ズバリの回答ができず申し訳ないですが…
トピック投稿者
natasha
(@natashanatashanatashanatasha)
mypacecreator様
何度もありがとうございます!
これ、私も最初にその状態になったので、セルの書式設定でフォーマットを文字列に設定したらカンマも反映できました。(一旦閉じて再度開くのは試してないですが)
おっしゃる方法でカンマを反映できるようになりました!
ただ、取り込んでみるとやはり「Array」になってしまいます。(Smart Custom Fields側の仕様でしょうか?)
また、プラグインを使わずカスタムフィールドに値を入れた場合、管理画面からフィールドそのものが消えてしまいます。(通常のテキストの場合は普通に表示されます。)
なんか問題をややこしくしてしまいましたが・・・
急ぎませんので、もし何かヒントありましたらご教示くださいm(_ _)m
ちゃんと検証していないのですが、インポート先のフィールドの種類が関係しているってことはないですか?
こちらは、繰り返しなしのtextフィールドで検証したのですが、違うフィールドだと扱いが変わってくる可能性はあると思います。
トピック投稿者
natasha
(@natashanatashanatashanatasha)
mypacecreator様
お返事遅くなって申し訳ありません。
私も繰り返しなしのテキストフィールドで試したのです・・・
気にはなりますが、今回の要件はクリアできているのでこちらは一旦閉じさせていただこうと思います。
mypacecreator様、いろいろアドバイスいただきありがとうございましたm(_ _)m