2015-02-11 3 views
-3

У меня есть установка WordPress, которую я хочу использовать для одностраничного сайта. Я получаю весь контент с массивом query_post. Для каждого раздела страницы он создает div с id #content.Добавить CSS-класс с PHP

<?php query_posts('post_type=page&order=ASC'); ?> 

<?php if (have_posts()) : while (have_posts()) : the_post(); ?> 

<div id="content"> 
    <div id="inner-content" class="wrap cf"> 
      <div id="main" class="m-all"> 

       <h2><?php the_field('headline') ?></h2> 

       <div class="sidebar"><?php the_field('sidebar') ?></div> 

       <div class="main-content"><?php the_content(); ?></div> 

      </div> 
    </div> 
</div> 

<?php endwhile; endif; ?> 

Теперь я хочу добавить конкретный идентификатор в каждый раздел страницы в зависимости от заказа. Что-то вроде

<div id="content section-1">...</div> 
<div id="content section-2">...</div> 
<div id="content section-3">...</div> 

и так далее. Как я могу изменить свой код для достижения этого?

+2

Я думаю, что с вашим кодом что-то не так: id вместо классов;) – Masiorama

+0

В дополнение к вышесказанному вы должны использовать 'counter' – rnevius

+1

О, боже! идентификатор содержимого дублируется. : O: O –

ответ

-1
<?php query_posts('post_type=page&order=ASC'); ?> 

<?php if (have_posts()) : while (have_posts()) : the_post(); ?> 

<div id="content section-<?php the_ID(); ?>"> 
    <div id="inner-content" class="wrap cf"> 
      <div id="main" class="m-all"> 

       <h2><?php the_field('headline') ?></h2> 

       <div class="sidebar"><?php the_field('sidebar') ?></div> 

       <div class="main-content"><?php the_content(); ?></div> 

      </div> 
    </div> 
</div> 

<?php endwhile; endif; ?> 

Это будет работать также

<?php query_posts('post_type=page&order=ASC'); ?> 
<div id="content section-<?php echo $i++; ?>"> 
    <div id="inner-content" class="wrap cf"> 
      <div id="main" class="m-all"> 

       <h2><?php the_field('headline') ?></h2> 

       <div class="sidebar"><?php the_field('sidebar') ?></div> 

       <div class="main-content"><?php the_content(); ?></div> 

      </div> 
    </div> 
</div> 

<?php endwhile; endif; ?> 
-1

Первый логически один элемент должен иметь только один идентификатор. и поскольку вы повторяете весь id = «контент», я предлагаю вам лучше добавить класс, и вы можете добавить обертку id = «content». и для получения id вы можете просто использовать the_ID(); которые должны работать. поэтому код должен выглядеть так:

<div id="content"> 

    <?php query_posts('post_type=page&order=ASC'); ?> 

    <?php if (have_posts()) : while (have_posts()) : the_post(); ?> 

     <div id="inner-content<?php the_ID(); ?>" class="wrap cf"> 

      <div id="main" class="m-all"> 

        <h2><?php the_field('headline') ?></h2> 

        <div class="sidebar"><?php the_field('sidebar') ?></div> 

        <div class="main-content"><?php the_content(); ?></div> 

       </div> 
     </div> 

<?php endwhile; endif; ?> 
</div> 

Итак, теперь у всех будет уникальный идентификатор. :) Приветствия !!!

Смежные вопросы