WordPressでカスタムフィールドとCSVファイル投稿する方法
2024/02/20
WordPressでカスタムフィールド設定している環境に、CSVファイルアップロードで記事投稿を行いたかった。カスタムフィールド設定はAdvanced Custom Fieldsを、CSVファイルアップロード投稿はReally Simple CSV Importerのプラグインを使用する。以下に方法をメモ。
カスタムフィールド設定
カスタムフィールド設定は以下を想定する。
フォーム内容 | カスタムフィールドの名前 |
テキストボックス | csv_text |
テキストエリア | csv_textarea |
チェックボックス | csv_checkbox |
ラジオボタン | csv_radio |
セレクトメニュー | csv_select |
チェックボックスは注意が必要
チェックボックスのみプラグインをカスタムするか、別途プラグインを入れるもしくは作る必要がある。今回は別途プラグインを作る方法で対応。
/wp-content/plugins/ディレクトリにacf-customフォルダを作成。そのフォルダ内にacf-custom.phpを作成し、以下内容を追記する。
<?php /* Plugin Name: acf-custom */ function adf_custom( $meta, $post, $is_update ) { //チェックボックスのカスタムフィールド名 $checkbox = array( 'csv_checkbox' ); foreach( $meta as $key => $val){ //checkbox if( in_array($key, $checkbox) ){ if( $val != "" ){ $meta[$key] = preg_split("/,+/", $val); }else{ $meta_array[$key] = ""; } } } return $meta; } add_filter( 'really_simple_csv_importer_save_meta', 'adf_custom', 10, 3 );
CSVファイル内容
CSVファイル内容を入力する際は以下を参考にする。
フォーム内容 | 書き方 |
テキストボックス | ダブルクオーテーションなし |
テキストエリア | ダブルクオーテーションあり 改行可 |
チェックボックス | カンマ区切りにした内容をダブルクオーテーションで囲む |
ラジオボタン | ダブルクオーテーションなし |
セレクトメニュー | ダブルクオーテーションなし |
関連記事
-
Advanced Custom Fieldsでチェックボックスの記事を取得
Advanced Custom Fieldsでチェックボックス設定しているカスタ ...
-
CSVファイルをアップロードしてWordPressに記事を投稿する方法
CSVファイルをアップロードすることでWordPressに記事を投稿したかった。 ...
-
Advanced Custom FieldsでGoogleMapの使用する方法
Advanced Custom FieldsでGoogleMapを使用したかった ...
-
Advanced Custom Fieldsでセレクトメニューを動的に生成する方法
WordPressでカスタムフィールド設定用のプラグインAdvanced Cus ...
-
WordPressで記事毎に設定したバナー広告を表示させる方法
WordPressでGoogleアドセンスのようなクリック広告ではなく、商品を指 ...