WP Sticky Page въпрос

BullBlogger

New Member
Днес съм малко тъп (добре де, не само днес обаче днес особено много) и не мога да направя нещо, което мислех, че ще е елементарно:

Искам на хоума да се виждат едновременно:
1. цялото съдържание на една определена page (текст, изображения, видео т.е. всичко)
2. Последните десет поста (под съдържанието на страницата) само excerpt (то си е сетнато)

Търсих плъгин (тъпо, знам) и стигнах до умния извод, че може би просто трябва в индекса да извикам съответната страница преди да заредя постовете? Хубаво но как?

Благодаря!
 
... може би просто трябва в индекса да извикам съответната страница преди да заредя постовете? Хубаво но как?

Това може да го направиш примерно така:

- От "Настройки" слагаш на началната да се показва въпросната страница, а не последните постове.
- В page.php, след кода, който показва съдържанието добавяш нещо такова:

PHP:
<?php
  if(is_home()):
  $query = new WP_Query();
  $query->query('showposts=10');
  if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post();
?>

... тука копираш от index.php html-a за постовете 

<?php endwhile; endif; wp_reset_query(); endif; ?>

А кода от index.php е нещо такова:

PHP:
<!--Post Wrapper Class-->
<div <?php if (function_exists('post_class')) post_class(); ?>>
  <!--post title as a link-->
  <h3 id="post-<?php the_ID(); ?>"><a href="<?php  the_permalink() ?>" rel="bookmark" title="<?php the_title();  ?>"><?php the_title(); ?></a></h3>
  <!--post text with the read more link-->
  <?php the_content(); ?>
  <?php edit_post_link('[edit this post]', '<p>', '</p>'); ?>
</div>
 
А може и обратното - да добавиш малко код в index.php (или home.php - каквото там се ползва в темата ти), преди показването на постовете:


PHP:
<?php if(is_home()):
  $query = new WP_Query();
  $query->query('pagename=mypageurladdr');
  if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post();
?>

... тука копираш от page.php html-a за съдържанието

<?php endwhile; endif; wp_reset_query(); endif; ?>
 
Мисля, че тоя вариант най ми допада. Сега обаче имам един въпрос - ако копирам от page.php съдържанието дефакто ще покаже коя страница? Всяка page. Аз искам да извикам страницата по Id. Мога да ръгна директно html-а естествено ама после става доста тегаво за редакция
 
ти няма да копираш цялото, само html-a между <?php if (have_posts()) : while (have_posts()) : the_post(); ?> ... и <?php endwhile; endif; ?>.

като минимум е нещо такова:

<h1><?php the_title(); ?></h1>
<div><?php the_content(); ?></div>

значи цялото нещо става:

PHP:
 <?php if(is_home()):
  $query = new WP_Query();
  $query->query('pagename=mypageurladdr'); // Тука взимаш само  тази страница, по url-a и (от админа дето се слага). Например  "contact-us".
  if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post(); 
?>

<h1><?php the_title(); ?></h1>
<div><?php the_content(); ?></div>

<?php endwhile; endif; wp_reset_query(); endif; ?>

Ако искаш по ID да я покажеш слагаш вместо "pagename=урладрес" , "p=ид-то-тука"
 
Последно редактирано:
vaskoa, благодаря за цялата оказана помощ. реп +

В резюме избрах следното решение:

в индекса вкарвам get_post (пример 2)

PHP:
http://www.tipsandtricks-hq.com/query-or-show-a-specific-post-in-wordpress-php-code-example-44

Гледах други варианти с обратната опция - извикване на последните постове в пейджа, но става доста тегаво с форматирането
 

Горе