PHPでCSVデータをCocoonテーマ(WordPress)で使えるHTMLテーブルに変換対応

PHPでCSVデータをCocoonテーマ(WordPress)で使えるHTMLテーブルに変換対応 PHP
PHPでCSVデータをCocoonテーマ(WordPress)で使えるHTMLテーブルに変換対応

PHPでCSVデータをCocoonテーマ(WordPress)で使えるHTMLテーブルに変換対応

Chillax Style | チラックススタイルのサイト内にて実際に活用している例として、200超のCSVデータをCocoonテーマ(WordPress)で使えるHTMLテーブルに変換している箇所は以下となります。


大量のデータをテーブルで扱う場合に便利なCSVファイルの内容をPHPで読み込み、Cocoonテーマ(WordPress)で使えるHTMLテーブルに変換して出力するPHPプログラムとなります。

車輪の再発明なのですが…まぁWordPressショートコードの勉強になりました。

public_html/wp-content/themes/cocoon-child-master/function.php

下記コードを子テーマのfunctions.phpに追記します。

//【Cocoon】CSV TO Cocoon TABLE start
/**
 * CSVファイルを読み込み、HTMLテーブルとして出力する
 * Cocoonテーマの記事内にショートコードで埋め込み可能
 * 例: [csv_table file="sample.csv"]
 */

function csv_to_html_table($atts) {
	// ショートコード属性の初期値
	$atts = shortcode_atts(
		array(
			'file' => '', // CSVファイル名(wp-content/uploads/Y/m/ 直下)
			'yyyymm' => '', // 年月フォルダ(Y/m/:2026/02/)
		),
		$atts,
		'csv_table'
	);

	// ファイルパスを決定(WordPressのアップロードディレクトリ)
	$upload_dir = wp_upload_dir();
	$csv_path = trailingslashit($upload_dir['basedir']) . $atts['yyyymm'] . $atts['file'];

	// ファイル存在チェック
	if (!file_exists($csv_path)) {
		return '<p style="color:red;">CSV CAN NOT FIND: ' . esc_html($atts['file']) . '</p>';
	}

	// CSV読み込み
	$rows = [];
	if (($handle = fopen($csv_path, "r")) !== false) {
		while (($data = fgetcsv($handle)) !== false) {
			// 文字コード変換(Shift-JIS → UTF-8)
			foreach ($data as &$value) {
				$value = mb_convert_encoding($value, 'UTF-8', 'SJIS-win');
			}
			$rows[] = $data;
		}
		fclose($handle);
	} else {
		return '<p style="color:red;">CSV CAN NOT OPEN</p>';
	}

	// HTMLテーブル生成
	$html = '<table class="cocoon-table" border="1" cellpadding="5" cellspacing="0">';
	foreach ($rows as $i => $row) {
		$html .= '<tr>';
		foreach ($row as $cell) {
			if ($i === 0) {
				// 1行目はヘッダー
				$html .= '<th>' . esc_html($cell) . '</th>';
			} else {
				$html .= '<td>' . esc_html($cell) . '</td>';
			}
		}
		$html .= '</tr>';
	}
	$html .= '</table>';

	return $html;
}

// ショートコード登録
add_shortcode('csv_table', 'csv_to_html_table');
//【Cocoon】CSV TO Cocoon TABLE end

functions.php追記対応後に、

WordPress管理画面 → メディア → CSVファイルをアップロード(例: sample.csv)。

ページ側のショートコードブロックに以下の様にCSVファイル名と年月フォルダ名を記述します。

[csv_table file="sample.csv" yyyymm=”2026/02/”]

プレビュー及び公開時にCocoonテーマのスタイルが適用されたテーブルが表示されます。

※文字化けした場合はCSVファイルの文字コードをSJISに指定してみて下さい

Google スプレッドシートでCSVファイルを作成する方法

EXCELだと「名前を付けて保存」にてCSVファイルへ変換するので、一瞬少し悩んでしまいますが、メニュー「ファイル」→ダウンロード→カンマ区切り形式(.csv)にてCSVファイルへ変換が可能です。


「PHPでCSVデータをCocoonテーマ(WordPress)で使えるHTMLテーブルに変換対応」でチラックススタイル💡

Chillax Style | チラックススタイル

「Chillax Style | チラックススタイル」では散歩や日々の出来事、PC関連、プログラム、デザイン、グラフィックetcの雑記を記載しています。私の記事が誰かの参考になれば幸いです。
AIはダートマス会議から数えて2026年で70周年!AI時代の2026年1月30日(金)より始めた当サイトでは、過去の出来事も多々掲載していきますが、自身の経験、体験に基づき、AIも活用しながらも自身で色々調べたオリジナル記事を掲載しています。

サブドメインでは特化型ブログとして数サイト運営中

Chillax Style Book | 読書チラックススタイル
SF、ホラー、ミステリー関連を中心に様々なジャンルのコロナ禍の頃から始めた読書感想記録です。この本を読んでみたいと感じる記事があれば幸いです。


Chillax Cooking | 自炊チラックススタイル
自炊47都道府県B級グルメや自炊世界B級グルメ、自炊漫画飯etc自炊記録です。外食関連は居酒屋チラックススタイル旅行チラックススタイル辺りに記載しています。読んで頂いた方の自炊のヒントになるモノがあれば幸いです。


Chillax Style Gardening | ガーデニングチラックススタイル
ミカン、金柑、枇杷…の果樹栽培からバラ、パンジー、チューリップ…のフラワーガーデン、食べられる野菜栽培やハーブガーデン、庭の生物etc吉祥寺の庭のガーデニング記録です。吉祥寺ガーデニング以外の公園や旅行でのネイチャー関連は、自然チラックススタイル旅行チラックススタイル辺りに記載しています。


Chillax Style Izakaya | 居酒屋チラックススタイル
吉祥寺や中央線、東京から仙台、京都、大阪、沖縄etc立ち飲みを中心とした、飲み歩き、食べ歩き、様々な地域の方々と交流した居酒屋記録です。


Chillax Style Nature | 自然チラックススタイル
都内の公園を中心に、昆虫観察や野鳥観察、四季の花etcのネイチャー関連記録です。


Chillax Style Travel | 旅行チラックススタイル
都内のプチ旅行やイベントも含めた旅行やBBQ、キャンプ、日本酒会etcの旅行、イベント関連記録です。

Chillax Style | チラックススタイル管理人 七祥 タケヤ(Takeya Nanasho)

コメント