テキストエディタで使える表組みショートコードでマークダウンっぽくかける方法です。
区切り線(|)で、セルを分けて、ハイフン(-)で区切ってそれより上のセルをthで表現します。
ショートコードの属性でcaptionとclassを追加しています。
区切り線をカンマに変えればExcel風にも利用できます!

利用方法

使い方

[table caption="caption" class="style"]
header|header
-|-
cell|cell
cell|cell
[/table]
エディター
ソースコード装飾ならGoogle code prettify

出力されるHTML

<table class="style">
<caption>caption</caption>
<tr>
<th>header</th>
<th>header</th>
</tr>
<tr>
<td>cell</td>
<td>cell</td>
</tr>
<tr>
<td>cell</td>
<td>cell</td>
</tr>
</table>
ソースコード装飾ならGoogle code prettify

実際の利用例

caption
headerheader
cellcell
cellcell
ショートコードでMarkdown風tableタグ

関数

以下をfunctions.phpなどに追加

function mytable($atts, $content = null) {
	$atts = shortcode_atts(array(
		'class' => 'style',
		'caption' => '',
	), $atts, 'bartag');
	if ($atts['caption']) {
		$caption = '
<caption>' . $atts['caption'] . '</caption>
';
	}
	if ($atts['class']) {
		$class = ' class=' . $atts['class'];
	}
	$pattern = "/<br(\s+\/)?>|
|<\/p>/i";
	$content = preg_replace($pattern, "", $content);
	$thead = preg_split("/\n-\|-\n/", $content);
	foreach ($thead as $key => $value) {
		$rows = explode("\n", $value);
		$rows = array_filter($rows, "strlen");
		$rows = array_values($rows);
		foreach ($rows as $row) {
			$cols = explode("|", $row);
			$recols = [];
			foreach ($cols as $col) {
				$tag = ($key == 0) ?'th':'td';
				$recols[] = '<'.$tag.'>' . do_shortcode( shortcode_unautop($col ) ) . '</'.$tag.'>';
			}
			$rerows[] = '
<tr>' . implode('', $recols) . '</tr>
';
		}
	}
	$table = '<table' . $class . '>' . $caption . implode('', $rerows) . '</table>
';
	return $table;
}
add_shortcode('table', 'mytable');
ソースコード装飾ならGoogle code prettify