web-dev-qa-db-ja.com

WordPressネットワークでプラグイン設定を共有するにはどうすればいいですか?

私はWordPressのウェブサイトを翻訳するためにマルチサイトを使っています、そして私は私がすべての言語からアクセスしたいと思うプラグイン https://wordpress.org/plugins/nmedia-user-file-uploader/ を持っています。すべてのサイトから、あなたは同じアップロードされたコンテンツと設定を見るべきです。どうすればそれを達成できますか?現在、ある言語でアップロードした場合、他の言語では表示できなくなります。

2
Rob

これを行う一般的な方法は、pre_option_{option}https://codex.wordpress.org/Plugin_API/Filter_Reference/pre_option_(option_name) フィルタを使用して「ローカル」設定を上書きし、自分の設定に格納されている値を使用することです。 「メイン」サブサイト。

何かのようなもの

add_filter( 'pre_option_the_plugin_option_name', function () {
  // Code assumes that "blog" 1 is the main one in which the relevant settings are stored.
  if (get_current_blog_id() != 1) {
    return get_blog_option(1, 'the_plugin_option_name');
  }

  return false;
}

プラグインの複雑さによっては、それでは不十分な場合があり、追加のオーバーライドが必要になりますが、単純な場合にはこのタイプのコードで十分なはずです。

2
Mark Kaplun