タグ付けされた質問 「multisite」

1つのインストールと1つの集中管理で複数のサイトを実行する。ネットワークおよびWPMUとも呼ばれます。


3
カスタムロール機能を作成するにはどうすればよいですか?
プラグインのインターフェースにアクセスするためのカスタム機能を作成したい。 プラグインは、アクティベーション時にすべての管理者アカウントにこの機能を追加して管理する必要がありますか? その場合:WordPressは、サブブログのすべての管理者とマルチサイトインストールのスーパー管理者に機能を追加することを管理していますか、またはその機能をプラグインで処理する必要がありますか?

3
マルチサイトプラグインの「グローバル」設定ページ
私は、マルチサイトインスタンスにインストールされるプラグインに取り組んでいます。 「ネットワーク管理者」レベルでのみ表示される単一の設定ページを作成する方法-私が見たガイドのほとんどは、標準のブログレベルプラグインに関連しています。情報へのリンクは役に立つでしょう。そうでなければ、サイト全体のタグを調べて、そこでどのように行われているかを確認するだけです。 [更新] sitewide_tags はadd_site_option、get_site_optionおよびを使用し、update_site_optionこれらの関数はwp_sitemetaを使用しているようです。ただし、私が見ることができることから、register_setting、add_settingなどのサポートはないため、オプションを手動で取得および設定する必要があります。

3
restore_current_blog()vs switch_to_blog()
すべてのインスタンスをswitch_to_blog()呼び出した後restore_current_blog()、現在の(実際には、以前の)ブログを復元する必要があります。 ただし、2つ以上のブログをループしてそれぞれを呼び出す場合は、各パスで呼び出すのではなく、ループの最後に追加を使用して元のブログに切り替えないswitch_to_blog()理由があります。switch_to_blog()restore_current_blog() 例えば 何故なの: $original_blog_id = get_current_blog_id(); foreach( $blog_ids as $blog_id ){ switch_to_blog( $blog_id ); //Do stuff } switch_to_blog( $original_blog_id ); の代わりに: foreach( $blog_ids as $blog_id ){ switch_to_blog( $blog_id ); //Do stuff restore_current_blog_id(); }
23 multisite 

8
1つのサイトのネットワーク対応プラグインを無効にする方法は?
私は(潜在的に)大規模なマルチサイトネットワークのセットアップを進めていますが、必要に応じてサイトを追加して構成することをできる限り簡単にすることを目指しています。現在、私はプラグインを扱っている段階にいます。 マルチサイトでは、プラグインをアクティブにするいくつかの異なる方法を認識しています プラグインを入れて、/pluginsすべてのサイトで個別に有効にします プラグインを入れて、/plugins「network activate」を使用してすべてのサイトでプラグインをアクティブにします プラグインをに入れて、/mu-pluginsすべてのサイトで自動的にアクティブ化されます 今、私は設定でプレーしてきたと私はすべてのサイトにアキスメットをアクティブにしたいが、 1または2。プラグインをネットワークでアクティブにしてから単一のサイトで無効にできると思っていましたが、それを行うことはできません-ネットワークをアクティブにする場合は、「ネットワークを無効にする」オプションのみがあり、プラグインを無効にしますすべてのサイト。 ネットワークの便利な機能を有効にする方法はありますが、それでもサイトごとにプラグインを無効にできるという便利さがありますか?
22 multisite 

4
WordPressマルチサイト-グローバルカテゴリ
WPマルチサイトインスタンスのセットアップ-クライアントには、ブログセット全体のすべてのコンテンツを分類したい既存のオントロジー/カテゴリセットがあります。また、新しいカテゴリが「ネットワークブログ」レベルで追加され、他のブログと同期されることも望まれます。 これを行う最良の方法は何ですか?

1
マルチサイトで書き換えルールを確実にフラッシュする方法は?
書き換えルールをフラッシュする必要があるプラグインがあるとします。アクティベーションフックとフラッシュレイトを追加することですべて適切に行うため、すべてがスムーズで互換性があります。 そして、ある晴れた日、誰かがそれをマルチサイトで実行しようとします。 次のような単純なシナリオの代わりに: WordPressサイトが作成されます プラグインがインストールされ、アクティブ化されています 次のような悪夢のシナリオがあります。 プラグインがインストールされ、ネットワークがアクティブになりました マルチサイトの新しいWordPressサイト(または100)が作成されます 理論的には、うまくいくはずですよね?実際には、それは見事な方法で間違っています: $wp_rewrite 状態は間違ったサイトからのものである可能性があります switch_to_blog() 書き換え状態も追跡しません 「後の」部分は別のブログで完全に発生する可能性があります 他のすべてのプラグインは、さまざまなサイトで一貫して有効になっていない可能性があります。 たとえば、この問題は、新しいサイトが作成されるたびに、メインサイトのパーマリンクが正しく表示されないことを示しています。 したがって、プラグインは、マルチサイトで書き換えルールを確実にフラッシュする方法を説明します。 新しいサイトが作成されると、そのサイトは? 既存のサイトが非アクティブからアクティブになった場合、そのサイトはどうですか? すべてのサイトでプラグインがネットワークで有効化されるとき すべてのサイトでプラグインがネットワークで無効になっている場合 おそらく他のシナリオで、グローバルコンテキストの書き換えが変更される可能性がありますか?

5
WPマルチサイトをサブディレクトリに移動する
まず、このプロセスに関する多くの投稿を読みまし た。ただし、さまざまな理由により、抽象化された例でさえ、または抽象化されすぎていても、プロセスを実装またはトラブルシューティングするのは困難なままです。そして、いくつかの「できない」投稿があり、ほぼ常に「3.5で、今できる」という警告があります。 概要: ワードプレスマルチサイト(WPMS)をroot.comからroot / blogsに移動する方法は? この例では、WPMSを「root.com」から「root.com/blogs」に移動します データベースとwp-config.phpのパスを適切に更新する必要があることを理解しています。.htaccessも更新する必要があるようです。また、検索/置換およびmysqlクエリの更新に伴うシリアル化の問題も認識しています。 3.5に更新したWPMSがあります。ドメインとパス情報を含む次のテーブルを見つけました サブディレクトリに移動する前の既存の作業構成 1. wp_blogs select blog_id, domain, path from wp_blogs; +---------+-------------+--------+ | blog_id | domain | path | +---------+-------------+--------+ | 1 | root.com | / | | 2 | root.com | /matt/ | +---------+-------------+--------+ 2. wp_site select * in wp_site; +----+-------------+------+ | …

2
WordPress MultiSite Active Directoryの統合とサイトのプライバシー
セットアップの概要は次のとおりです。 WordPress 3.4.2のマルチサイトインストールがあります。 私はインストールしました Active Directory Authentication Integrationプラグインをて、ユーザーが自分のAD資格情報を使用できるようにしました。これにより、各サイトにADグループを割り当てることができるため、サイト管理者が手動でアクセス許可を割り当てる必要がなくなります。 ネットワークプライバシープラグインをインストールしたため、コンテンツを表示するには特定のサイトにログインする必要があります。匿名ユーザーにはログインページのみが表示されます。 多くの点で、このセットアップは機能します。しかし、私は1つの問題を抱えており、これが私たちのプライマリWordPressマルチサイトインストールにこれを展開するのを妨げています: ボブはADの「ITサポート」グループのメンバーです。 ボブは、ADの「ドメインユーザー」グループのメンバーでもあります。 メインサイト(www.mysite.com)は、「Domain Users」メンバーがログインています。 サブサイト(www.mysite.com/itsupport)は、「IT Support」メンバーがログインています。 ボブはwww.mysite.comにアクセスし、認証を求められます。彼は自分のAD資格情報を入力し、サイトに入れます。 www.mysite.comにログインしたので、ボブはリンクをクリックしてwww.mysite.com/itsupportにアクセスし、サイトのメンバーではないというエラーを受け取ります。 このサブサイトのWordPressデータベースにはユーザーエントリが作成されていないようです。 ボブはwww.mysite.comからログアウトします。 ログアウトしたので、ボブは直接www.mysite.com/itsupportにアクセスし、認証を求められます。彼は自分のAD資格情報を入力し、サイトに入れます。 この時点で、このサブサイトに対してWordPressデータベースのユーザーエントリが作成されているようです。 彼がログアウトしてwww.mysite.comにログインすると、問題なくitsupportサイトに移動できます。 両方のサイトのボブのユーザーエントリを削除し、ネットワークプライバシープラグインを無効にすると、ボブはwww.mysite.comにログインし、itsupportサイトに移動できます。しかし、彼のユーザーエントリを削除し、ネットワークプライバシープラグインを再度有効にすると、問題が再発します。 他のプライバシープラグインでも同じ問題が発生しましたが、どのプラグインを思い出せません。 問題を特定できる場合、または類似の設定を行っている場合は、ADグループを使用して特定のサイトをロックダウンできるという基本的な基準を満たす限り、何でも試してみます。

1
switch_to_blog()を信頼するにはどうすればよいですか?
switch_to_blog()ブログID を使用して電話をかけると、そのブログが実際に存在するかどうかわかりません。関数は常にを返しますTRUE。 テストケース: switch_to_blog( PHP_INT_MAX ); $post = get_post( 1 ); restore_current_blog(); これにより、ユーザーに公開されるデータベースエラーが発生します。どうすればそれを防ぐことができますか? 実世界のユースケース 私はMultilingual Pressの主任開発者でした。ユーザーが投稿を翻訳すると、次のような画面が表示されます。 これで、次のことが起こります。 彼女は投稿を正常に保存し、投稿の翻訳を続けます。 別のユーザーであるネットワーク管理者は、執筆中にドイツのブログを削除します。 彼女はもう一度保存を押し、データベースエラーを取得します。 私はそのシナリオを避けたいです。対象のブログが存在するかどうかをすばやく確認するにはどうすればよいですか?私はswitch_to_blog()非常に頻繁に複数の異なるクラスで呼び出すため、高速でなければなりません。

5
マルチサイトでWP Cronを正しい方法で実行する
WordPress Multisiteにはいくつかのサイトがあります。私はセットアップDISABLE_WP_CRONにtrue私の中でwp-config.php。 wgetまたはcurlを使用してcronタスクをセットアップした場合、PHPスクリプトを実行するための30秒のルールがあります。大量の電子メール通知を送信したり、他のことをしたりするのは非常に小さいです(リモートSMTPサーバー接続が遅いかもしれません。bbPressなどからの大量の電子メール通知かもしれません)。 このようなものを使用できますか? php -q wp-cron.php ただし、マルチサイトの1つのサイトに対してのみcronを実行します(各サイトには、異なるMySQLテーブルに独自のcronタスクがあります)。 PS wpmudev.orgフォーラムで、 Curlを使用する奇妙な「ソリューション」を見つけました。 別のPS WP CLIには素晴らしいwp cronコマンドがありますが、cronタスクを手動で実行することしかできません(そう、--urlattr を使用できます)。例えば: wp cron event list --url=multisite.com wp cron event list --url=subdomain.multisite.com

2
異なるドメイン名でWordpressマルチサイトを使用する方法は?
WordPressマルチサイトで作業したいが、自分の名前を使用できるようにしたい。たとえば、私のメインサイトはという名前example.comです。マルチサイトネットワークに新しいサイトを追加する場合は、を呼び出しnewsite.example.comます。私はそれになりたいnewsite.comなしexample。これを達成する方法はありますか? プラグインを使用したドメインマッピングについて聞いたことがありますが、これがこの質問に関連するかどうかはわかりません。関連する場合、これが正確に何であるかを知りたいと思います。

2
WordPressの就職面接の準備
WordPress開発者としての仕事のためにインタビューしています。WPで作業してから1年になりますが、設定方法、functions.php機能、テーマの変更場所など、概要を十分に把握できていると感じています。しかし、来週のインタビューはいくつかのMySqlを投入してWordPressとLinuxについてすべてを尋ねます。私が知っているのは、ラップトップとテストを提供してくれることだけです。 どうすればそのようなことを準備できますか?今日、プラグインの作成を練習する必要がありますか?Linuxサーバーのセットアップ方法は知っていますが、高度なファイル操作やシェルスクリプトにはあまり向いていません。私はセットアップ、トラブルシューティング、設定が得意です。そして、WP Codexを大いに読みました。適切に準備するために自分に与える良い宿題は何でしょうか?WP中心のインタビューを勉強するためのリソースがあまりないことに気付きました。
17 multisite  linux 

2
マルチサイトのサイトから投稿を取得しますか?
複数のサイトの投稿をプルしようとしています。たとえば、カテゴリごとの1つのサイト投稿と合計投稿数10を引き出すことができます。 しかし、2つの別々のマルチサイトブログ1と2から両方の投稿を引き出しようとしています。しかし、ブログ1のみが機能します。また、ブログ1とブログ2から別のカテゴリーを抽出します。どうすればこれを達成できますか? これが私がやろうとしていることです: <?php global $switched; switch_to_blog(1,2); //switched to 1 & 2 but only 1 working // Get latest Post $latest_posts = get_posts('&cat=64&showposts=10'); $cnt =0;?> <ul> <?php foreach($latest_posts as $post) : setup_postdata($post);?> <li> <a href="<?php echo get_page_link($post->ID); ?>" title="<?php echo $post->post_title; ?>"><?php echo short_title('...', 7); ?></a> </li> <?php endforeach ; …

3
新しいブログ設定フォームにカスタムブログオプションを追加する方法
十分に単純な要件のようですが、私は苦労しています: 「新しいサイトの追加」にオプションフィールドを追加したい。 シンプルなテキストオプションで十分です。どうすればいいですか? サイトの作成時に、このカスタムブログオプションを保存する必要があります。 私は「wpmu_new_blog」フックを使用できることを知っていますが、これは$meta提供されたオプションで変数を渡しますが、1つのステップでこれをすべて行う方法があるので、別のDBクエリを実行する必要はありません、サイト作成プロセス全体を上書き/置き換えますか? ノート: MultiSiteセットアップでWP 3.3.1を使用しています。指定したカスタムフィールド値に一致するすべてのサイトをリストするプラグインを作成しています(「タイプ」と呼びましょう)。 また、私は経験豊富なPHP開発者ですが、WordPressのハッキングはまだ比較的新しいので、さまざまなWP関数とフックのすべてにまだ精通していないと想定してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.