注)この記事はhttps://make.wordpress.org/の記事をWordPressの開発の中で何が行われているかを自分自身が理解するために翻訳したものです。
Google翻訳の助けを大いに借りており、翻訳の正確性を保障するものではありませんし、公式な翻訳でもありません。REFER:https://make.wordpress.org/core/2017/08/12/multisite-recap-for-the-week-of-august-7th/
posted:11:40 pm on August 12, 2017
Office Hours Recap
このオフィスアワーミーティングのアジェンダは、特定の項目でサイトを検索する機能を、レガシーで巨大化したget_blog_details()
の後継として導入する必要があるかどうかを議論することでした。
The meeting’s chat log
Chat Summary:
-
#40180で提案された
get_site_by()
関数を導入することが決定されました。しかし、より適切な関数名にする必要があります。
get_term_by()
のような他の既存の関数と同様に動作することができますが、フィールドの配列を受け入れてクエリを行うことができるという大きな違いがあり、名前が少し混乱してしまいます。 -
get_site_by()
の使用例をいくつか示します。get_site_by( 'id', 2 )
get_site_by( 'slug', 'subsite1' )
get_site_by( array( 'domain' => 'mainsite.com', 'path' => '/subsite1/' ) )
get_site_by( 'domain', 'subsite1.mainsite.com' )
(サブドメインでマルチサイトをインストールした場合のみ動作します)
- 上記に加えて、サブディレクトリネットワーク内のパスのみによる取得もサポートする必要がありますが、最新のパッチでは存在しません。
- ドキュメントでは、理論的はに複数の結果が見つかる場合、最初の結果が返されることを明確にすべき。
get_blog_details()
は新しい関数をラップし、いくつかの調整をして後方互換性を維持します。-
ディスカッション後のオープンな議論
*_blog_details()
関数廃止の可能性についてさらに検討しました。それらはまだ広く使用されているので、おそらくすぐには廃止しないはずです。ただし、#40364、#40180、#40228、および#40201の変更が完了したら、get_blog_details()
、update_blog_details()
およびrefresh_blog_details()
を非推奨にするための新しいチケットをオープンする必要があります。それらのすべての関数は、その時点で不必要になります。- #40364からの新しいサイトCRUD関数は、
wp_blogs
テーブルと個々のサイトテーブルの両方を扱うラッピング関数の準備が整った後でマージする必要があります。 CRUD関数は実際にサイトのデータベーステーブルを設定するものではなく、ほとんどの場合には単独で使用すべきではないことを明確にする必要があります。 -
@drewapictureは#25650について課題提起しました。これにはかなり重大なバグがあります。マルチサイトの別のサイトに切り替えても、メディアベースのURLは元のサイトを指しています。 @flixos90はこれの助けとなる
get_content_url($ blog_id = null、$ path = '')
関数を提案しました。 @drewapictureはチケットを注視しています。
- マルチサイトロードマップについて計画されていた議論はすべて完了したので、@jeremyfeltと@flixos90は今後数週間は結果を適切なフォーマットに整理することにフォーカスする予定です。
チケットスクラブの要約
このチケットスクラブのアジェンダは、4.9のマイルストーンに割り当てられたマルチサイトチケットの審査を終了した後、さらなるチケットについてのオープンな議論をすることでした。
The meeting’s chat log
Chat Summary:
- #29684の議論が進むには、さらなる 第三者としての意見必要であるため、要請された。
- #36961(現在のサイト以外のユーザー権限を初期化できないバグ)と#38645(ロール切り替えの改善を目的とする)ではレビューが必要です。それらは両方ともサイトの切り替えを扱うので、一種の関連性があります。@flixos90には、互いのラインを連動させ、不必要なレガシーの肥大化を改善するための切り替えプロセスを改訂するパッチがあります。これらの変更がなければ、元のバグを切り替えるだけでは不十分ですが、バグは非常に明確な方法で修正することができます。 @jeremyfeltはこれらの提案を見直します。
- @spacedmonkeyは、サイトメタ関連チケット#37923と#40229のパッチを処理しています。彼はネットワークのメタコードにも取り組んでおり、すぐにこれらのチケットをすべて更新する予定です。
- @flixos90は#40364のパッチをアップしており、サイト用の完全なCRUD APIを実装することで、REST API用の
wp/v2/sites
エンドポイントの基盤を提供します。新しい機能の焦点は、wp_blogs
テーブルを扱い、接続されたすべての機能をフックで処理することでした。 @jeremyfeltはチケットとパッチを見直してコメントを残しました。 - #40764と#41538は両方とも@swissspidyによってレビューされています。
- #41538は簡単な修正ですが、新しい権限についての#39677がマージされるまで待つべきです。
-
オープンな議論
- @spacedmonkeyはマルチサイトコードベースの理解を向上させるためにいくつかのチケットの一部として#41507を公開しました。チケットはマイルストーン化され、コミットされています。
-
関数の置換に関して、@flixos90は
*_site_option()
と*_network_option()
が一度だけ*_network_meta()
呼び出すようにコアを変更しました。議論では、メタ機能は常にIDを渡す必要があり、引き続きこれを行う必要があるため、ネットワークのメタ機能をネットワークオプション機能に直接置き換えることはできません。*_network_option()
関数が呼び出されるフックを見つける必要がありますが、*_network_meta()
関数はそれに当てはまりません。 - @jeremyfeltはWordPressが廃止された機能を決して削除しないので、上記の議論で#41520を指摘しました。手動で特定の定数を設定することで推奨されていない機能がロードされないようにできれば便利です。
- @SPacedmonkeyは#41510のフィードバックを求めました。チケットは今のところマイルストーン化され、コミットされています。