勉強したことのメモ

webプログラマが勉強したことのメモ。

WordPressでカスタムフィールドとCSVファイル投稿

      2019/01/28

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ファイル内容を入力する際は以下を参考にする。

フォーム内容 書き方
テキストボックス ダブルクオーテーションなし
テキストエリア ダブルクオーテーションあり
改行可
チェックボックス カンマ区切りにした内容をダブルクオーテーションで囲む
ラジオボタン ダブルクオーテーションなし
セレクトメニュー ダブルクオーテーションなし

 - WordPress

  関連記事

WordPress記事本文の文字検索と置換方法

WordPressの記事本文内にhogeという文字列が含まれていた場合、hoge ...

WordPressのウィジェットをTOPのみ等、特定のページだけ表示する方法

■やりたかった事 TOPページのみ任意のウィジェットを表示させ、記事ページやアー ...

ACFでセレクトメニューを動的に生成

WordPressでカスタムフィールド設定用のプラグインAdvanced Cus ...

WordPressでプラグインの作成方法

WordPressで簡単なニュースを表示させるというプラグインを作成したので、使 ...

WordPress4.0の新機能

WordPress4.0への更新が出来るとダッシュボードに書いてた。 互換性で変 ...

WordPressのサーバー移行で気付いた点

あるWordPressを置いているサーバーのリソースが苦しくなってきたので、新た ...

WordPressで「データベース接続確立のエラー」

WordPressで設定ファイル(wp-config.php)は触っていないのに ...

WordPressで自作テーマにウィジェット対応

WordPressで自作したテーマでウィジェットを登録しようとしたところダッシュ ...

Advanced Custom FieldsでGoogleMapの使用

Advanced Custom FieldsでGoogleMapを使用したかった ...

FeedWordPressでアイキャッチ画像も設定する方法

FeedWordPressで更新記事を取得しつつ、アイキャッチ画像も自動で設定し ...