投稿/ブログページのID
-
-
検索エンジンヘルパーをプレイするのに最適な貢献ではありませんが、これは当てはまる可能性があります: `$postspage_id=get_option( 'page_for_posts');`from:http://www.blog.highub.com/cms/wordpress/wordpress-front-page-posts-page-id/not the best contribution playing search engine helper, however, this might apply: `$postspage_id = get_option('page_for_posts');` from: http://www.blog.highub.com/cms/wordpress/wordpress-front-page-posts-page-id/
- 0
- 2012-02-25
- Michael
-
@ Michael-これを答えとして投稿しますか?@Michael - post this as an answer?
- 0
- 2012-02-25
- Stephen Harris
-
提案を答えに移しました.moved the suggestion into an answer.
- 0
- 2012-02-25
- Michael
-
2 回答
- 投票
-
- 2012-02-25
使用を検討してください:
$postspage_id = get_option('page_for_posts');
次に、コードの各行を次のように変更します.
$leftSidebar = get_post_meta( $postspage_id, '_my_meta', true );
from: http://www.blog.highub.com/cms/wordpress/wordpress-front-page-posts-page-id/
consider to use:
$postspage_id = get_option('page_for_posts');
and then change the rspective line in your code to:
$leftSidebar = get_post_meta( $postspage_id, '_my_meta', true );
from: http://www.blog.highub.com/cms/wordpress/wordpress-front-page-posts-page-id/
-
上記のおかげでそれは私のために働きます.現在表示しているページがブログページかどうかを確認するだけです.これは、表示されたページがブログ/投稿ページである場合にtrueと評価される `if(is_home($postpage_id))`によって実行できます.`is_page`などはブログページでは機能しないため、`is_home`を使用してチェックすることはパズルの重要な部分でした.私はこの[投稿](http://wordpress.stackexchange.com/questions/14768/determine-if-page-is-the-posts-page)でこれについて知りました.私はこれを答えとしてマークしています.Thanks the above it works for me. I just have to do a check if the current page I am viewing is the blog page. This can be done by `if (is_home($postpage_id))` which will evaluate to true if the page viewed is the blog/posts page. Using `is_home` to check was a vital piece of the puzzle because `is_page` etc. do not work for the blog page. I found out about this at this [post](http://wordpress.stackexchange.com/questions/14768/determine-if-page-is-the-posts-page). I am marking this as an answer.
- 0
- 2012-02-26
- navanitachora
-
- 2012-02-25
query_posts
を使用している場合(メインループが変更されるため、いくつかの欠点があります)、コーデックスによるとquery_posts()を使用する必要がある場合は、完了後に必ずwp_reset_query()を呼び出してください.
(コーデックス
wp_reset_query()
を参照)たとえば// The Query query_posts( $args ); //your $args // The Loop while ( have_posts() ) : the_post(); //Display title, content here etc. endwhile; // Reset Query afterwards wp_reset_query();
query_posts
を使用していない場合でも、="nofollow"> wp_reset_postdata()
これは...別のクエリをループした後、この関数は$postグローバルをメインクエリの現在の投稿に復元します.
If you are using
query_posts
(which has some drawbacks since it alters the main loop), as the Codex says,If you must use query_posts(), make sure you call wp_reset_query() after you're done.
(See codex
wp_reset_query()
)for For example// The Query query_posts( $args ); //your $args // The Loop while ( have_posts() ) : the_post(); //Display title, content here etc. endwhile; // Reset Query afterwards wp_reset_query();
If you are not using
query_posts
you may still need to usewp_reset_postdata()
which...After looping through a separate query, this function restores the $post global to the current post in the main query.
-
query_postsを使用しておらず、wp_reset_query()とwp_reset_postdata()の両方を試しましたが、役に立ちませんでした.私のブログページが自分自身をブログページとして認識させる代替手段はありますか?I am not using query_posts and I have tried both wp_reset_query() and wp_reset_postdata() but to no avail. Are there any alternatives that will make my blog page recognize itself as the blog page.
- 0
- 2012-02-25
- navanitachora
-
質問を更新し、ループに使用しているコードを提供する必要があります.それ以外の場合、何が問題なのかはわかりません.You'll have to update your question and provide the code you are using for the Loop, hard to say what's wrong otherwise.
- 0
- 2012-02-25
- Stephen Harris
-
ループのコードで質問を更新しました.I have updated the question with the code for the loop.
- 0
- 2012-02-25
- navanitachora
静的なフロントページとすべてのブログが表示されるブログページがあるWebサイトがあります.
私は独自のテーマを使用しており、
$post->ID
からの戻り値に基づいてサイドバーにコンテンツを表示するカスタムメタボックスをいくつか作成しました.私が得ている興味深い動作は、$post->ID
が、ブログページ自体のIDではなく、最初のブログのIDを提供することです.私はループの外で$postを使用していて、それをグローバルに宣言しましたが、役に立ちません.$wp_query->post->ID
も使用してみましたが、最後の投稿のIDがわかります.関連するコードは、$postを使用する場所であり、このコードはfooter.phpにあります:
ループに使用されるコードは以下のとおりで、index.phpに配置されています:
さらに情報が必要な場合はお知らせください.プログラムでブログページのIDを見つけて、ブログページが自分自身をブログページとして認識させ、問題を解決する最初の投稿ではないようにする方法があれば.
よろしくお願いします.