<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>カスタムタクソノミー アーカイブ - studioDoghands</title>
	<atom:link href="https://www.doghands.com/tag/%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%82%BF%E3%82%AF%E3%82%BD%E3%83%8E%E3%83%9F%E3%83%BC/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.doghands.com/tag/カスタムタクソノミー/</link>
	<description>スタジオ・ドッグハンズ-運用しやすいホームーページを制作する会社です。</description>
	<lastBuildDate>Fri, 15 Mar 2024 12:48:26 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://www.doghands.com/wp-content/uploads/cropped-favicon-1-32x32.png</url>
	<title>カスタムタクソノミー アーカイブ - studioDoghands</title>
	<link>https://www.doghands.com/tag/カスタムタクソノミー/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">58793406</site>	<item>
		<title>カスタムフィールドで登録した情報をやっぱりカスタムタクソノミーに移行してみる</title>
		<link>https://www.doghands.com/convert_data_from_custom_field_to_custom_taxonomy/</link>
		
		<dc:creator><![CDATA[hiro]]></dc:creator>
		<pubDate>Tue, 18 Feb 2020 06:12:25 +0000</pubDate>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[ウェブ制作・運用]]></category>
		<category><![CDATA[カスタムフィールド]]></category>
		<category><![CDATA[カスタムタクソノミー]]></category>
		<category><![CDATA[WordPress全般]]></category>
		<guid isPermaLink="false">https://www.doghands.com/?p=12639</guid>

					<description><![CDATA[<p><img width="450" height="191" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021829-450x191.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" fetchpriority="high" /></p>
<p>大量の記事のカスタムフィールドの内容を、新規で作成したカスタムタクソノミーに移動したい。 リニューアルや引き継ぎ案件でたまーに発生する作業です。 まず、サイトに掲載するデータをカスタムフィールドにするか、カスタムタクソノ</p>
<p>投稿 <a href="https://www.doghands.com/convert_data_from_custom_field_to_custom_taxonomy/">カスタムフィールドで登録した情報をやっぱりカスタムタクソノミーに移行してみる</a> は <a href="https://www.doghands.com">studioDoghands</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[<p><img width="450" height="191" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021829-450x191.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" /></p><p>大量の記事のカスタムフィールドの内容を、新規で作成したカスタムタクソノミーに移動したい。<br />
リニューアルや引き継ぎ案件でたまーに発生する作業です。</p>
<p>まず、サイトに掲載するデータをカスタムフィールドにするか、カスタムタクソノミーにするか、これは明確な場合もあれば、迷う場合もあります。<br />
データが一意であればカスタムフィールドにしておけば良いのですが、サイトを長らく運用しているうちに「あれ？これ結構何回も使うぞ？カスタムタクソノミーにして選択式の方が良かったかも。」という状況が発生することもあります。</p>
<p>例えば、<br />
毎回異なる調味料を紹介するサイト。カスタムフィールド「今日の調味料」を作成。<br />
数年経つうちにレシピサイト寄りに路線変更。また、最初は単発の扱いであった「ハリッサ」のレシピが好評で、カスタムフィールド「今日の調味料」に「ハリッサ」が登録されている記事だけでも数十に。</p>
<p>こんな場合、明らかに「今日の調味料」はカスタム投稿タイプにしておいた方が運用が楽で、また「ハリッサを使ったレシピ一覧」の表示も簡単です。</p>
<p>弊社では「後々面倒にならない。運用が楽」であることを最も重視しているので、上記のようなことはめったに起こりませんが、既存のサイトではたまにみる設計です。</p>
<p>今回は、「カスタムフィールド」を利用して多くの記事を書いてしまったが、この「カスタムフィールド」に登録した単語を「カスタムタクソノミー」に移動、記事の他の部分には手を加えない。という作業をしてみます。</p>
<h2>作業の順序</h2>
<p>作業の順序はこのような感じになります。<br />
1.カスタムフィールドを含んだ投稿をCSVでエクスポート<br />
2.タクソノミー登録用にCSVを加工する。<br />
3.タクソノミーを一気に登録する。<br />
4.タクソノミーと関連付けた投稿CSVをインポートして投稿を上書き<br />
5.カスタムフィールドの削除等の仕上げ</p>
<p>それでは実際に作業してみます。</p>
<h2>1.カスタムフィールドを含んだ投稿をCSVでエクスポート</h2>
<p>これはプラグインを利用します。<br />
今回は「<a href="https://wordpress.org/plugins/wp-all-export/" rel="noopener noreferrer" target="_blank">WP All Export」</a>を使ってみましょう。<br />
<img decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021801.png" class="alignnone size-full wp-image-12644" alt="" width="700" height="228"></p>
<p>投稿タイプを選択してから、エクスポートするデータの項目の設定に進みます。<br />
<img decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021802.png" class="alignnone size-full wp-image-12645" alt="" width="700" height="507"></p>
<p>エクスポートするデータを選択します。<br />
プラグイン「Advanced Custom Fields」（ACF）を利用したカスタムフィールドのラベルは「ACF」に表示されています。<br />
該当のラベルを中央にドラッグします。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021803.png" class="alignnone size-full wp-image-12646" alt="" width="700" height="339"></p>
<p>インポート時はIDで上書きする投稿を判別するので、「Title」や「Content」は枠外にドラッグしてクリアしても良いでしょう。</p>
<p>設定完了後、CSV形式でローカルに保存します。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021804.png" class="alignnone size-full wp-image-12647" alt="" width="700" height="300"></p>
<h2>2.タクソノミー登録用にCSVを加工する。</h2>
<p>ローカルに保存したCSVは<br />
・タクソノミー登録用<br />
・投稿上書き用<br />
の2種類に分けることになります。<br />
まずは「タクソノミー登録用」にCSVを加工しましょう。</p>
<h3>GoogleスプレッドシートにCSVをアップする</h3>
<p>エクセルでもLibreOfficeでも何でも良いと思いますが、今回はGoogleスプレッドシートで加工してみます。<br />
空のスプレッドシートを作成し、ローカルのCSVをインポートします。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021805.png" class="alignnone size-full wp-image-12648" alt="" width="574" height="399"></p>
<p>「現在のシートを置換する」をチェックしてインポートします。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021806.png" class="alignnone size-full wp-image-12649" alt="" width="304" height="235"></p>
<p>こんな感じでずらっと表が作成されます。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021807.png" class="alignnone size-full wp-image-12650" alt="" width="369" height="451"></p>
<p>タクソノミー作成用の表を作るので、まずはシートをコピーして「タクソノミー抽出作業」のような名前を付けておきましょう。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021808.png" class="alignnone size-full wp-image-12651" alt="" width="297" height="116"></p>
<h3>Googleスプレッドシートで加工</h3>
<p>加工に入ります。<br />
この作業では、カスタムフィールド以外の情報は必要が無いので削除しておきます。<br />
下の場合、「Id」と「Title」列は必要ありません。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021809.png" class="alignnone size-full wp-image-12652" alt="" width="334" height="166"></p>
<p>下はカスタムフィールドのみ残した列のイメージです。<br />
fruitsというフィールドに、みかんやいちご等の単語が並びます。<br />
これらをタクソノミーとしてサイトに登録するために、まずは「<strong>重複</strong>」を消していきます。</p>
<h3>単語の重複を排除する</h3>
<p>重複の削除は簡単です。</p>
<p>列を選択して、上部の「データ」から「重複を削除」をクリックして完了です。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021811.png" class="alignnone size-full wp-image-12653" alt="" width="598" height="614" srcset="https://www.doghands.com/wp-content/uploads/cf2ct-20021811.png 598w, https://www.doghands.com/wp-content/uploads/cf2ct-20021811-50x50.png 50w, https://www.doghands.com/wp-content/uploads/cf2ct-20021811-45x45.png 45w" sizes="auto, (max-width: 598px) 100vw, 598px" /></p>
<p>重複が削除されました。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021812.png" class="alignnone size-full wp-image-12655" alt="" width="307" height="193"></p>
<p>基本的な加工は一旦ここまでにして、「3.タクソノミーを一気に登録する。」に進みます。</p>
<h2>3.タクソノミーを一気に登録する。</h2>
<p>まずは移行対象となるタクソノミーをサイトに登録しておきます。<br />
例えば、カスタムフィールドの項目「Fruits」をタクソノミーに移動したい場合は「Fruits」や任意の名前でタクソノミーを作成します。<br />
「<a href="https://ja.wordpress.org/plugins/custom-post-type-ui/" rel="noopener noreferrer" target="_blank">Custom Post Type UI</a>」等のプラグインを利用しても良いでしょう。</p>
<p>このタクソノミーに個々の単語（ターム）を一括で登録する為、プラグインを利用してみます。</p>
<p>今回は「<a href="https://wordpress.org/plugins/wp-taxonomy-import/" rel="noopener noreferrer" target="_blank">WP Taxonomy Import</a>」を使います。<br />
※長らく更新されていない為、管理画面からのプラグイン検索結果には表示されず、ダウンロードしてインストールする必要があります。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021813.png" class="alignnone size-full wp-image-12656" alt="" width="700" height="369"></p>
<p>プラグインを有効可して、「設定」→「Taxonomy Import」から設定画面を開きます。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021814.png" class="alignnone size-full wp-image-12657" alt="" width="691" height="348"></p>
<p>プルダウンから登録しておいたタクソノミーを選択し、フォームにタームを記入していきます。<br />
タームの入力方法は下記の通りです。<br />
・デリミタで区切るとタームとスラッグを同時で登録可能（デフォルトのデリミタ: $ ）<br />
例:りんご$ringo<br />
・タームの親子関係は-&gt;で指定可能<br />
例<br />
Toyota-&gt;rav4<br />
Toyota-&gt;ch-r</p>
<h3>スラッグも登録しておく</h3>
<p>ということなので、先程作成した表にスラッグも追加してみます。<br />
コツは間に一列を追加し、セルにデリミタ（$）を入れておくことです。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021815.png" class="alignnone size-full wp-image-12658" alt="" width="302" height="191"></p>
<p>こうしておけば、表をコピーして<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021817.png" class="alignnone size-full wp-image-12660" alt="" width="384" height="184"></p>
<p>エディタ（ATOMやSublime Text、VS Code等何でも良いです）にペースト<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021816.png" class="alignnone size-full wp-image-12659" alt="" width="294" height="139"></p>
<p>余計な空白を置換して削除すれば、「Taxonomy Import」に使えるテキストが完成します。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021818.png" class="alignnone size-full wp-image-12661" alt="" width="245" height="140"><br />
※画像では一列目（fruits$スラッグ）までコピーしてしまっていますが、ここは必要ありません。</p>
<p>「Taxonomy Import」にテキストをペーストして、タクソノミーをインポートします。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021819.png" class="alignnone size-full wp-image-12662" alt="" width="383" height="303"></p>
<p>ここまでで、カスタムフィールドに登録されていた単語を特定のタクソノミーのタームとして登録することができました。</p>
<h2>4.タクソノミーと関連付けた投稿CSVをインポートして投稿を上書き</h2>
<p>後は投稿とタクソノミー（のターム）を紐付けて、既存の投稿を上書きします。</p>
<p>「1.カスタムフィールドを含んだ投稿をCSVでエクスポート」で作成し、スプレッドシートにアップした表を利用します。</p>
<p>投稿の一括登録（上書き）には、プラグイン「<a href="https://wordpress.org/plugins/really-simple-csv-importer/" rel="noopener noreferrer" target="_blank">Really Simple CSV Importer</a>」を利用してみます。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021820.png" class="alignnone size-full wp-image-12663" alt="" width="700" height="433"></p>
<p>このプラグインも長らく更新が無く、ダウンロードしてインストールが必要になります。</p>
<h3>「Really Simple CSV Importer」の基本的な使い方</h3>
<p>基本的な使い方は、<a href="http://notnil-creative.com/blog/archives/3465" rel="noopener noreferrer" target="_blank">プラグイン製作者様のこちらの記事</a>が一番わかり易いです。</p>
<p>CSVの各項目のタイトルをルールに沿ってリネームし、WordPress管理画面「ツール」→「インポート」→「CSV」からインポートを実行します。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021821.png" class="alignnone size-full wp-image-12664" alt="" width="546" height="93"></p>
<h3>「Really Simple CSV Importer」用に表を加工する</h3>
<p>今回は既存の記事に、新規設定したタクソノミーを登録するだけなので、表はシンプルです。<br />
必要なのは記事IDとタームのみです。後は、投稿タイプの指定も推奨されているので追加しておきます。</p>
<p>元の表。実際はTitleの列も必要ありません。<br />
エクスポートしたカスタムフィールドの項目名を、今回登録したタクソノミー名に変更します。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021822.png" class="alignnone size-full wp-image-12665" alt="" width="349" height="280"></p>
<p>「Really Simple CSV Importer」ではタクソノミーを登録する際、下記のルールがあります。<br />
・列名は「tax_タクソノミー名」。例えばfruitsならtax_fruits<br />
・タクソノミーとタームは登録済である必要がある※この為、「3.タクソノミーを一気に登録する。」の作業をしておく必要があります。</p>
<p>今回の作業で最低限必要なのは、このようなイメージの表です。※ポストタイプは必須ではありませんが、指定が推奨。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021823.png" class="alignnone size-full wp-image-12666" alt="" width="316" height="164"></p>
<h3>加工した表をCSVとしてローカルに保存</h3>
<p>表の加工が完了したら、「ファイル」→「ダウンロード」からCSV形式でローカルに保存します。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021824.png" class="alignnone size-full wp-image-12667" alt="" width="560" height="420"></p>
<p>WordPress管理画面からインポート画面（「ツール」→「インポート」→「CSV」）から先程のCSVを選択して、インポートを実行して完了です。</p>
<h2>5.カスタムフィールドの削除等の仕上げ</h2>
<p>後は、利用しないフィールドの削除、管理画面で該当するカスタムタクソノミーの表示、サイト側の表示コードの修正、等の仕上げを行います。</p>
<h3>カスタムフィールドのデータを削除「Delete Custom Fields」</h3>
<p>「Advanced Custom Field」から項目を削除しても、以前に入力し、記事に紐付けられているデータは残ったままなので、データベースから削除、またはプラグインを利用します。</p>
<p>これまた長らく更新されていないプラグインなので、下記ページからダウンロードしてインストールが必要です。<br />
利用時には念の為サイトのバックアップを取っておきましょう。<br />
<a href="https://ja.wordpress.org/plugins/delete-custom-fields/" rel="noopener noreferrer" target="_blank">Delete Custom Fields</a><img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021826.png" class="alignnone size-full wp-image-12669" alt="" width="700" height="354"></p>
<p>「ツール」→「Delete Custom Fields」から、データを削除するカスタムフィールドを選択し、実行します。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021827.png" class="alignnone size-full wp-image-12670" alt="" width="700" height="239"></p>
<p>記事に紐付けられていたカスタムフィールドのデータが削除されます。<br />
<img loading="lazy" decoding="async" src="https://www.doghands.com/wp-content/uploads/cf2ct-20021827.png" class="alignnone size-full wp-image-12670" alt="" width="700" height="239"></p>
<h2>最初の設計が肝心</h2>
<p>如何でしたでしょうか？<br />
ホームページの設計時に、カスタムフィールドとカスタムタクソノミーの特性を理解しておけば、このような作業は必要ありません。<br />
・後でまとめて表示したいかも<br />
・何回も使うかも<br />
と思うような項目は、カスタムタクソノミーの利用を考えましょう。</p>
<p>引き継いだサイトの中には、繰り返されるセミナーの開催地や、採用ページの勤務地がカスタムフィールドとして設計されているサイトもありました。<br />
つまり、管理画面から毎回毎回同じような住所を記入しなければならないのです。<br />
このような場合は、カスタムタクソノミーで地名を選択式にしておき、連動する要素（住所、アクセス、地図）を自動で出し分ける方が運用が楽でしょう。<br />
カスタムフィールドで選択式にしておく方法もあると思いますが、この場合「同じ会場で開催されているセミナー一覧」「同じ勤務地で募集している採用一覧」などの表示が面倒です。</p>
<p>これからサイトを作る場合は後々運用が面倒にならないように、慎重に設計しましょう。</p>
<p>投稿 <a href="https://www.doghands.com/convert_data_from_custom_field_to_custom_taxonomy/">カスタムフィールドで登録した情報をやっぱりカスタムタクソノミーに移行してみる</a> は <a href="https://www.doghands.com">studioDoghands</a> に最初に表示されました。</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">12639</post-id>	</item>
	</channel>
</rss>
