web-dev-qa-db-ja.com

WordPressはどのマルチサイト上にユーザーがいるのかをどのように判断しますか?

WordPressがURLからどのマルチサイトにアクセスしているかを判断するファイルと行は何ですか?

私は午後を通してコードを調べてきましたが、それがどこでmysite.com/blogbase/myblog2(ID)に変えるのかを理解することはできません。 get_id_from_blogname()関数がありますが、ロード時に呼び出されるようには見えませんか?

1
Nick

実行するのに少し時間がかかりましたが、これが私たちが終わるところです。

wp-settings.phpの85行目で、MULTISITE定数が定義されているかどうかを確認します。もしそうなら、それはあなたがどのブログにいるのかを把握するようなことを扱うマルチサイトファイルをロードします。

そのうちの1つが/wp-includes/ms-settings.phpです。私はそれがあなたがどのブログを50行目に載せているかを決定すると信じています。

$current_site->blog_id = $wpdb->get_var( .... 'SELECT blog_id FROM ... WHERE path = ...' );

基本的に、$current_sitewpmu_current_site()から返されるグローバルstdClassです。 ms-settings.phpでは、設定によってまだ強制されていない場合は上書きされます。

/wp-includes/ms-load.phpの情報についてはwpmu_current_siteをチェックしてください

1
Tyler Carter