新規ポストFileMakerでWordPressを編集するシリーズです。何かにつけて「新規は危険なのでやらないほうがいいです」と書きましたがやっぱり新規を作りたい曲面もあります。FileMakerを使ってローカルから新規ポストを作ってみましょう。新規ポストを作るときの注意点は次の二点です。IDはWordPressが作ってくれますから作成の邪魔しちゃいけません空欄不可の項目がありますから対処を忘れずにこれを踏まえて新規ポストを作ります。適当にpostsテーブルに新規レコードを作ってタイトルだけ入れたらエラーになります。新規ポストについてはスクリプトに仕込んでおき、常にそのスクリプトを実行するというのが望ましいと思います。新規ポストの手順WordPressには新規ポストを作る関数が用意されています。postデータベースにポストを追加するコマンドです。phpではこのように書きますね。postこの関数は値のチェックやデフォルト値の設定を行います。FileMakerから新規を作るとき、このコマンドを真似れば上手くいきそうです。リファレンスに詳しく載っていますからよく読んで、必須のデフォルト値をフィールドに挿入できるようスクリプトを仕込みましょう。必須項目に何を入れていいのか分からないときは空文字を入れます。何も入れないとエラーが出ます。これは当然必須ですわな多分このようなところかと思います。実はプログラムの世界では「何もないものを入れる」ということができます。WordPressで必須のフィールドの多くは「何もないものを入れる」ことによって関数が良きに計らってくれる仕組みになっています。FileMakerでは何もないものを入れるというコマンドはないので、何かを入れなければなりません。働きに一番近いのが半角スペースを入れることですが、厳密には全然違うものです。抜粋であるexcerptありますね。web上でWordPressを編集すると空でも問題ありませんがFileMaker上で新規ポストを作ると「必須項目に何か入れろ」と叱られます。仕方なしに空白を入れます。これちょっと問題を抱えています。あるアーカイブのテンプレートで「抜粋があれば表示する、なければコンテンツから100文字抜き出す」みたいな処理をすることがよくあると思います。このとき、ウェブ上のWordPressで作成した結果だと思い通りの挙動が得られますが、FileMakerで新規ポストを作ってexcerptに半角スペースを入れていると「抜粋がある」ことになって半角スペースだけが表示されてしまいます。「なぜ抜粋も本文も表示されないのだろう」と首をかしげますが半角スペースが表示されてるだけと気づいて「そういうことかー」と愕然としたりします。ダッシュボードから修正するとか、無理矢理何か書くとか、対処が必要なので書いておきました。FileMakerのスクリプト新規ポストのスクリプト、自分は二段構えにしています。最初のスクリプトはダイアログを次々と表示させてポスト種類、ステイタス、タイトルなど必要事項を入力または確認していき、それぞれグローバル変数に格納します。次のスクリプトに繋げ、実際に新規レコードを作成して仕込んでいた変数をそれぞれのフィールドにだーっと配置します。最後に確認してついでにローカルpostsに同じデータを作って確定します。このような二段構えのスクリプトに加えて、新規ポスト専用レイアウトを作ったりして慎重な手順を踏んでいます。FileMakerで新規ポストを作るときは「空欄不可」と「必須」への入力を忘れずに処理することだけが肝心な部分です。これさえ踏まえていれば何も恐れることはありませんね。