На сайте, особенно на главной странице, присутствует масса статичной информации. Это какой-нибудь лозунг в шапке, информация о компании и ее преимуществах, данные во вкладках или табах и многое другое.
Все это проще вставить непосредственно в нужный шаблон, но если эта информация часто редактируется, а администрирует его человек, далекий от HTML, то удобнее ее вставить через страницу.
1
Создаем страницу, например; "О компании", пишем текст и добавляем изображение страницы
2
В нужном нам шаблоне получаем ее данные:
1 2 3 4 5 6 7 |
<?php $post_id = 476; // ID страницы $post_data = get_post($post_id); $post_title = $post_data->post_title; // получаем заголовок страницы $post_content = $post_data->post_content; // получаем содержание страницы $post_image = get_the_post_thumbnail($post_id, 'large', array('class' => 'img-responsive') ); // получаем изображение страницы ?> |
И выводим их как нам нужно, например:
1 2 3 4 5 |
<h1><?php echo $post_title ?></h1> <div class="row"> <div class="col-sm-6"><?php echo $post_image ?></div> <div class="col-sm-6"><?php echo $post_content ?></div> </div> |
Чтобы вывел обработанную страницу, надо не сырой post_content выводить - а его обработанный вариант.
Это делается так (для данного примера):
$post_content = apply_filters('the_content', $post_data->post_content);
Вот теперь шорткоды все отработают.
ПС:
$post_data - плохое название переменной. Не говорит нам о том, что это объект, а скорее, что это массив.
Либо просто безликий $post используйте, либо $post_obj или $post_object
Выводит то выводит 🙂 но шорткоды не понимает...
[/su_column] [su_column size="1/2" center="no" class=""] Антон Павлович говорил, что в человеке все должно быть прекрасно