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');
,а затем измените строку rspective в вашем коде на:
$leftSidebar = get_post_meta( $postspage_id, '_my_meta', true );
от: http://www.blog.highub.ru/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/
-
Спасибо,что это работает для меня.Мне просто нужно проверить,является ли текущая страница,которую я просматриваю,страницей блога.Это может быть сделано с помощьюif (is_home ($postpage_id)),которое будет оценивать как истинное,если просматриваемая страница является страницей блога/сообщений.Использованиеis_home для проверки было жизненно важной частью головоломки,потому чтоis_page и т. Д. Не работают для страницы блога.Я узнал об этом в этом [сообщении] (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
,вам может все равно нужно использовать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
У меня есть веб-сайт,на котором есть статическая главная страница и страница блога,на которой отображаются все блоги.
Я использую свою собственную тему и создал несколько настраиваемых мета-блоков,которые отображают содержимое на боковой панели на основе возвращаемого значения из
$post->ID
. Я получаю интересное поведение:$post->ID
выдает мне идентификатор первого блога,а не идентификатор самой страницы блога. Я использую $post вне цикла и объявил его глобальным,но безрезультатно. Я также пробовал использовать$wp_query->post->ID
,но это дает мне идентификатор последнего сообщения.Соответствующий код - это то место,где я использую $post,ниже этот фрагмент кода находится вfooter.php:
Код,который используется для цикла,приведен ниже и помещен вindex.php:
Пожалуйста,дайте мне знать,если потребуется дополнительная информация. Если есть способ найти идентификатор страницы блога программно и заставить страницу блога распознавать себя как страницу блога,а не как первое сообщение,которое решило бы мою проблему,я думаю.
Заранее спасибо.