-
ID:378rW8 さんの質問

Wordpress:そのURLに対するページ情報を変えるには?
-
※私の言う"ページ情報"とは、ページidなどを定義(1)しなくとも、そのURLを判断して自動的に取得されたページ情報のこと(2)を指します。
◆(1)ユーザーが明示的に定義する場合:
$query = new WP_Query( ’page_id=25’ );//定義
if( $query->have_posts() ): while( $query->have_posts() ): $query->the_post();
//生成
◆(2)定義せずURLから暗黙的にページ情報が定義される場合:
『URL:?page=25』
if( have_posts() ): while( have_posts() ): the_post();
//生成
-
この暗黙的なページ情報を(例えばpageIDが88のページに)変えたいのですが、どうしたらいいでしょう?
-
一部のプラグインが、ユーザーからのページIDを受け取らず、暗黙的なページ情報によって動作するので、この問題を解決する必要があります。

みんなの回答 3 件

ID:t0F.zK さんの回答

やりたい事は、Post ID 25 のURLにアクセスした場合に、Post ID 88 の Post content などを出したいと言うことですか?

ID:t0F.zK

メインループを変更したいのであれば、アクションフックの pre_get_posts で変更できます。
フィルターフック、アクションフックの理解が無いのであれば、ドキュメントをお読みください。

プラグイン API / WordPress Codex 日本語版
ttp://goo.gl/X6b9

ID:378rW8

ありがとうございます!

ID:yfWNDX さんの回答

ようはプラグインがURLからページ情報を取得しているから、それを変更したいってことね。ただ、残念ながら、一意な方法はないよ。
結果として、JavaScriptかPHPのどちらかでURLパラメータを取得しているのは間違いないけど、該当プラグインがWPの作法に則って書かれているとは限らないし、言ってみればどこでどのように定義するかはまったくの自由だから、注意深くプラグインを解析するしかないね。ソースを直接編集するように書かれたものでない限り、URLパラメータの取得方法を知らない人ができる作業ではないと思うよ。

ID:M/Iewi

この回答はちと違うと思うな・・・。

WordPress でメインループを使うのは当たり前の事。
あと、「プラグインがURLからページ情報を取得しているから」これも解釈が違う。WordPress を知らない人の回答ですね〜。

WordPress で URL パラメータをプラグイン自身が受け取るのは、独自の URL パラメーターを付けた場合だけです。プラグインが出力しているポスト情報はメインループを使ってるだけで、ポスト ID やページ ID を URL パラメーターで受け取ったりはしていないです。
※ WordPress コアでは URL パラメーターで情報を判断していますが。

WordPress を知らない人が、WordPress を知らない人の質問に回答するのは、カオスになる且つ問題解決にならないので控えた方がよいかと。

ID:yfWNDX

特別な知識を持っているつもりはないけど、日本語の読解力大丈夫?
トピ主が使ってる「一部のプラグイン」が、君が言うとおりに「WordPress でメインループを使うのは当たり前の事。」に則っているかどうかなんてものをなぜ保証できるの? そのプラグインがWP本体が推奨する方法で作られているとは限らないって言ってるのよ。
で、トピ主によると、該当プラグインが「URLから暗黙的にページ情報を定義する」って読み解いたんだよね。どんなプラグインが使われているかも分からないのに、それを全面否定するってどうなのよ。

ID:M/Iewi

いや、キミそこ日本語の解読力大丈夫か?
「一部のプラグインが、ユーザーからのページIDを受け取らず、暗黙的なページ情報によって動作するので」て書いてあるじゃない。で、「◆(2)定義せずURLから暗黙的にページ情報が定義される場合:」の例を書いてるじゃない・・・。大丈夫?理解力?
あと余談だけど、公式ディレクトリに登録出来るプラグインは、WordPress の作法に則ってないと掲載は出来ない。ま、公式ディレクトリのプラグインを使っていない場合もあるだろうけれども・・・、最近は野良プラグインが紹介される記事も少ないから、野良プラグインである可能性は低いだろうけれど。
あと、トピ主は呼び名は知らずとも、メインループとサブループがある事は理解していて、プラグインのソースも見ていると思うよ?じゃなければ、この質問内容にはならないと思うが?(ま、勘で質問した可能性は否定できないが)

以上の事から(纏まってないけれど)、コメ主の回答は見当違いと言える。

ID:yfWNDX

うーん。「カオスになる且つ問題解決にならない」のが誰のことなのか自分の放った言葉に問いかけてみるといいね。

ID:L2WsZw

>M/IewibhClBQ
そんなに知識をひけらかしたいなら普通に回答すりゃあいいじゃない

ID:M/Iewi

>> うーん。「カオスになる且つ問題解決にならない」のが誰のことなのか自分の放った言葉に問いかけてみるといいね。

お前がなwwwww こんな奴ばかりだから、このサイトの質が上がらないんだな。

>> そんなに知識をひけらかしたいなら普通に回答すりゃあいいじゃない
同じ回答は 2 つも必要ない。既に回答は >>1 がしている。

ID:378rW8 さんの回答

精神年齢の低い回答らがこちらです↑ご査収ください。

ID:t0F.zK

そんな事わざわざ言わなくてもいいと思いますよ?そんな下らない事書いている時間があるなら、メインループを改変するコードを書きましょう(笑)
その方が有益です、多分。

最終更新日:2015-04-23 (1,994 views)

関連するトピックス

ページ上部に戻る