web-dev-qa-db-ja.com

カスタム投稿タイプと投稿フォーム:将来性 - 他よりも「将来性」が低いのか?

私は契約の仕事のための次の指針に直面しています。

投稿の種類と投稿の形式

カスタム投稿タイプを避け、投稿フォーマットを採用する投稿フォーマットはWordPressコアでサポートされており、スターターテーマで既に有効化されています。あなたは投稿フォーマットに独自のスタイル、フォーマットおよび機能を割り当てることができます。クライアントが将来テーマを切り替える場合でも、WordPressは次のテーマの機能シートで有効になっている限り、起動したフォーマットを認識します。

投稿タイプはあなたのテーマの関数ファイルに登録する必要があり、新しいテーマがアクティブになる時が来たときにはそれほど簡単には譲渡できません。ほとんどの場合、複数のキー値と機能を持つ投稿を作成する必要性は、カスタムフィールド、機能のある画像、そしてWordPressコアを通してすでに利用可能な他の多くの機能を利用する専用の投稿フォーマットで満たすことができます。

ベストな判断をしてください。 "

私はその点を理解していますが、テーマを一瞬で切り替えることを計画しているWebサイトを構築するときには、そのフォーマットは非常に便利です - 私はそれをやり遂げるのに苦労しています。

Webサイトにはページがあり、おそらく通常「投稿」になるもののための外部APIフィードがあります。それから、FAQやフードメニューのようなものをループするいくつかのセクションがあります。

私は現在よくある質問とフードメニューアイテムのためのカスタム投稿タイプを持っています。 「投稿」は使用される可能性は低いですが、私はそれらを可能な「ブログ」または「ニュース」用に予約しています。

提案されているように、私はただフォーマットを選んで、 'aside'のようにそれをFAQとして使用します - そして多分 - 'quote'を取り、それをメニュー項目に使用します。それから - すべてのデータは「投稿」の下になるでしょう。

私はジャークになりたくないし、単に穀物に逆らって行きたいのですが……これは直感的にはあまりわかりません。クライアントは 'ポスト'に行かなければならなくなり、それからすべてのFAQとメニュー項目はすべて混同されるでしょう。それからあとでニュースセクションがあれば...それらはニュース、FAQ、そしてメニューアイテムになるでしょう。クライアントはおそらくフォーマットをチェックするのを忘れて混乱するでしょう - そして私の請負業者に助けを求めなければなりません。

これら2つの文章を比較すると(各ケースから1つ)

「クライアントが将来テーマを切り替える場合でも、WordPressは次のテーマの機能シートで有効になっている限り、起動した{post}フォーマットを認識します。」

そして

投稿タイプはあなたのテーマの関数ファイルに登録する必要があり、新しいテーマをアクティブにする時が来たときには簡単に譲渡できません。

...それから本当に違いは何ですか。どちらにしても、小さなコードブロックを含める必要があります。そうしないと、どちらも機能しません。

このデータは他のWordPressテーマよりも今後数年間でJSフレームワークに集約される可能性があります。その場合、データは私の目でははるかに面倒です。 WP-APIを使用する場合は、Ember Appなど、カスタム投稿タイプを優先します。

Custom-post-typesは現状のまま - このサイトの外側のどの「フィード」にも配置されません。私がフィードでFAQを欲しがっているなら - 私はポストフォーマット「さておき」とカテゴリーを使用したかもしれません。

もしサイトがたくさんの高度なカスタムフィールドで作られていて - そしてたくさんのパーシャルに分割されていて - そしてスタイラスと連結されたbowerコンポーネント、そして特別な機能で作られているなら、とにかく 'テーマ - 交換可能'。カスタム投稿タイプを登録するためのコードの小ブロックが最も心配の少ないことを確認します。 (一般的に私はテーマを念頭に置いてWordPressを使用したことはありません - そして非常に仕立てられたサイトのためにゼロからのみ。私はウィジェットなどを使用したことがありません。

私はちょうど頭の中に12のスクリプトを含めて、プリプロセッサなしでCSSを書くべきだったのだろうか?しかし、それはただ失礼に思えます...そして他のテーマへの移行を容易にすることはないでしょう...

どのような場合に、サイトデータを分割するそれぞれのスタイルがより将来的な証拠になるでしょうか。カスタム投稿タイプがなくなる可能性は本当にありますか?私は投稿フォーマットがマイクロブログの単なるボーナスだと思いました - そしてほとんどの人は実際に彼らがそれを中核にしたことに憤慨していたと思います。

私はこれが意見の境界にあることを知っています、しかしそれは本当に私にはありません。私は最善を尽くしたいと思っています - しかし、マイクロブログのサブフォーマットの文法的でない選択が最善であると信じるのは本当に難しいです。

エンドユーザーは忙しいことが多く、明確なUIが必要です。カスタム投稿タイプは、ここで明らかに勝者です。 - しかし、私は私のクライアントを「私の最善の判断を使う」ことによって不愉快にしています - そしてPost形式よりカスタムの投稿タイプを使うことになるでしょうか?

各パスについて客観的なユースケースを教えてください。

これは、このテーマに関するいくつかの考えです。

http://wptavern.com/why-arent-post-formats-in-wordpress-more-popular

https://managewp.com/wordpress-post-formats-blogging

IRCやその他の場所で、私はほぼ100%を獲得しています〜 "あなたがFAQを作っているなら - それらは投稿ではなく、そしてカスタム投稿タイプであるべきです。"私は「これにはフォーマットを使用しないでください」と言っていますが、一方が他方より未来に優しいという証拠はあまりありません。

これを ふりをする APIのURLを例に挙げてみましょう。

http://somewebsite.com/cms/wp-json/wp/v2/faqs
vs
http://somewebsite.com/cms/wp-json/wp/v2/posts?format=aside&category=faq

2を説明しようと私の試み:

  • 投稿フォーマットは、特定のシナリオでの投稿のスタイル設定や、フィード内でさまざまな投稿の分類を行いたい場合のマイクロブログ用です。

  • カスタム投稿タイプは投稿ではないデータのグループ用です。

しかし - それは将来性の証拠ではありません...そしてもしpost-format - であればpost-formatのほうがずっと良いです - 私はユーザーにとって直感的なインターフェースを見逃すべきではないでしょうか? - もしそうなら、私は正しいことをやるよ。

投稿の種類と投稿の形式

[1]投稿フォーマットはWordPressコアでサポートされています、[2]そしてスターターテーマで既に有効になっています。 [3]あなたは投稿フォーマットに独自のスタイル、フォーマットおよび機能を割り当てることができます。クライアントが将来テーマを切り替える場合でも、WordPressは次のテーマの機能シートで有効になっている限り、起動したフォーマットを認識します。

[4]投稿タイプはあなたのテーマの関数ファイルに登録する必要があり、新しいテーマをアクティブにする時が来たときには簡単に譲渡できません。 [5]ほとんどの場合、複数のキー値と機能を持つ投稿を作成する必要性は、カスタムフィールド、機能のある画像、 [1] そしてWordPressコアを通して他の多くの機能がすでに利用可能です。

ベストな判断をしてください。 "

  1. 両方ともWP coreでサポートされています。
  2. 誰もがスターターテーマを使うわけではありません
  3. どちらも同じスタイルでカスタマイズできます。
  4. どちらも関数ファイルに登録する必要があります
  5. を必要とする ポストフォーマットで満足することができる、真 - しかし理想的であるという証拠はない

これらすべての記述は、議論の両側を打ち消すように思われる。



私が見つけることができる唯一の警告:

ドキュメントから: https://codex.wordpress.org/Post_Types

プラグインとしてのカスタム投稿タイプについての言葉テーマの切り替えでサイトを壊さないようにするには、カスタム投稿タイプをプラグインとして定義するか、もっと必須のプラグインとして定義するようにします。これにより、ユーザーに特定のテーマの使用を強制することはありません。

"プラグインを使用する必要があります" https://codex.wordpress.org/Must_Use_Plugins

2
sheriffderek

質問を読んだ後、息を切らしてマラソンを走ったように感じました。

これらのタイプの質問の場合と同様、ほとんどの質問は事実ではなく意見に基づいているため、間違った答えや正解はありません。ここで具体的に議論できる点はほとんどありません

ポイント1

投稿タイプは、テーマの関数ファイルに登録する必要があり、新しいテーマをアクティブにするときが来たら簡単に転送できません

残念ながら完全に強気です。カスタム投稿タイプとカスタム分類はneverをテーマに登録する必要があり、alwaysをプラグインに登録する必要があります。一般的な経験則として、テーマではなくサイトに機能を提供するものがある場合(、ここの場合)、プラグインに入る必要があります。この件に関しては2、3の投稿がありました。追加の追加情報については、サイト検索を利用してください。つまり、テーマが切り替えられた後でも、プラグインから正しく登録されていれば、カスタム投稿タイプとカスタム分類は常に利用可能であるべきです。

ポイント2

カスタム投稿タイプを避け、投稿フォーマットを採用してください!投稿フォーマットはWordPressコアでサポートされており、スターターテーマで既に有効化されています

カスタム投稿タイプと投稿フォーマットの両方がコアによってサポートされており、どちらの場合も使用する前に登録/追加する必要があります。したがって、この点は完全にオーバーボードであり、議論の余地がないはずです。はい、投稿フォーマットはすでにスターターテーマの一部ですが、テーマXに切り替えた場合のテーマXはどうですか。

ポイント3

そのままのカスタム投稿タイプ-このサイトの外部の「フィード」には場所がありません。

真と偽。これが、私がカスタム投稿タイプを好む理由の1つですが、意見については議論しません。デフォルトでは、分類および投稿タイプのアーカイブページを除き、カスタム投稿タイプはメインクエリから除外されます。これにより、カスタム投稿タイプをいつ、どこで、どのように使用するかをより詳細に制御できます。フィード、ホームページ、アーカイブページなどへのカスタム投稿タイプの追加は、目的の条件で簡単なpre_get_postsアクションを追加するのと同じくらい簡単です。これは、投稿タイプの登録に使用したプラグインと同じプラグインでも実行できます

それとは別に、投稿タイプを登録するときにregister_post_type()のパラメーターの値を調整するだけで、投稿タイプとサイトでの使用方法を操作するために使用できる追加の追加機能がたくさんあります

ポイント4

私は頭に12個のスクリプトを含めて、プリプロセッサなしでcssを書いただけなのかと思っていますか?

絶対にしないでください。常にwp_register_scriptsフックを使用して、必要に応じてヘッダーとフッターにスクリプトとスタイルを追加します。これらを直接ヘッド(またはフッターにハードコーディングしないでください。 )。また、クライアント側の言語とプラットフォームで重要な機能を操作することの大ファンでもありません。問題は、クライアントベースの機能に依存するものはすべて、エンドユーザーが操作できることです。クロスブラウザの互換性も常に問題です。 JSとCSSのみを使用して、サイトの額面(look and feel)を操作し、サイトの機能を制御させないでください。 PHPなどのサーバー側言語を使用して制御します。

ポイント5

カスタム投稿タイプがなくなる可能性は本当にありますか?

カスタム投稿タイプおよび/または投稿フォーマットがコアから削除される可能性は明確に0%です。余分なポイントとして、register_post_type()を使用してデフォルトの投稿タイプを登録しますpostおよびpageおよびregister_taxonomy()を使用してデフォルトの分類を登録しますcategorypost_tagpost_format、およびlink_category

コアから何かが削除され、減価償却が定期的に発生することは非常にまれですが、削除はほとんどありません。まだ賢明に使用されているパラメーターcaller_get_postsshowpostsを例に取ります。これらはバージョン3.0の時点で使用されるべきではありませんが、人々はまだそれを使用しています。 (デバッグをオンにすると、これについて明確な通知が表示されます)。コア開発者がこれをコアから削除することを想像してください。

Wordpressコアは、後方互換性に特に焦点を当てています(特に機能が大幅にアップグレードされて劇的に変更されるか、機能が減価される場合)、これは非常に大きな利点です非開発者向け。開発者として、減価償却された関数/引数/などに注意が追加されるため、開発中にデバッグを有効にすることが推奨されますalways.

元のポイントに戻るために、カスタム投稿タイプまたは投稿フォーマットがコアから削除されることを心配する必要はありません。

ポイント6

投稿形式はマイクロブログにとって単なるボーナスであり、ほとんどの人は実際にそれをコアにしたことに動揺していると思いました。

要するに、投稿フォーマットは単なるボーナスであり、便利なものです。この点は何度も議論される可能性があり、それが実際にどれほど役立つかという事実もあります。ここでは、プロジェクトに役立つかどうかにかかわらず、実際には個人的な好みに基づいています。私は個人的には投稿フォーマットの大ファンではありません。私は、プロジェクトの要件に応じて、投稿形式よりもカスタム投稿タイプまたはカスタム分類法を好んでいます。カスタム投稿タイプやカスタム分類では、投稿フォーマットよりもはるかに多くの制御が可能です。

投稿形式に関する大きな問題の1つは、standardnot投稿形式であることです。投稿形式が割り当てられていない投稿の単純なフォールバックです。投稿フォーマットなしで投稿を削除したりクエリしたりする必要がある場合、特定のループの変更は面倒です。

ポイント7

投稿の形式は、特定のシナリオで投稿のスタイルを設定したり、フィードでさまざまな投稿の分類が必要な場合のマイクロブログ用です。

言われたことのほとんどが正しい。投稿形式は、必ずしもマイクロブログに限定する必要はありません。 canプロジェクトの正確なニーズに応じて、投稿形式または非常に大きなプロジェクトも使用します。しかし、繰り返しますが、それをどのように使用するかは、プロジェクトと個人的な好みによって異なります

カスタム投稿タイプは、投稿ではないデータのグループ用です。

違います。はい、それらはある意味ではデータのグループです。カスタム投稿タイプはjus9tを行うために使用されますが、それらが投稿ではないと言うのは間違っています。ページも投稿なので、通常の投稿やカスタム投稿タイプの投稿も同様です。それらはすべてまったく同じように扱われ、唯一の本当の違いは階層です。非階層型投稿タイプの投稿(投稿型postのような)階層型投稿タイプ(投稿タイプpage)のように、子投稿を持つことができます

結論

カスタム投稿タイプ(、さらにはカスタム分類)と投稿フォーマットはここにあります。どちらを使用するかは、手元のプロジェクトとあなたが何に満足しているかに依存します。これには、事前の注意深い計画が必要です。また、テーマが変更されたときに互換性と使いやすさを保つために、どのように、どこでshould機能を登録/追加するかを知ることも非常に重要です。

私が与えたのは基本的なガイドラインであり、そのように扱われるべきです。これには本が必要なので、これ以上詳しく説明することはできません。オンサイトとオフサイトで確認すべき多くの情報があります。

あなたのプロジェクトで頑張ってください

5
Pieter Goosen