use
use
Karr::for_in($sheetsCount, function ($i) use ($spreadsheet) {
$spreadsheet->setActiveSheetIndex($i);
$result[] = Karr::clear_empty($spreadsheet->getActiveSheet()->toArray());
});
while ( have_posts() )
— это цикл перебора постов из глобального запросаthe_post()
— функция устанавливает переменную $post для работы функций the_title()
, the_content()
и подобныеWP_Query()
, то и переменные устанавливаются из этого же запроса ( $query->have_posts(), $query->the_post() )// Задаем нужные нам критерии выборки данных из БД
$args = array(
'posts_per_page' => 5,
'orderby' => 'comment_count'
);
$query = new WP_Query( $args );
// Цикл
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
the_title(); // Заголовок
the_content(); // Контент
}
} else {
// Постов не найдено
}
// Возвращаем оригинальные данные поста. Сбрасываем $post
wp_reset_postdata();
get_posts()
— это обертка для класса WP_Query
с несколькими предустановленными параметрами. Установка переменной $post делается с помощью функции setup_postdata()
и в целом тот же цикл выглядит немного по другому// Задаем нужные нам критерии выборки данных из БД
$args = array(
'posts_per_page' => 5,
'orderby' => 'comment_count'
);
$my_posts = get_posts( $args );
// Цикл
if ( $my_posts ) {
foreach ( $my_posts as $key => $post ) {
setup_postdata( $post );
the_title(); // Заголовок
the_content(); // Контент
}
} else {
// Постов не найдено
}
// Возвращаем оригинальные данные поста. Сбрасываем $post
wp_reset_postdata();
the_title()
, the_content()
, get_template_part()
и т.д., вместо их использования вы можете доставать данные напрямую из объекта. Например, такая конструкция тоже будет работать$args = array(
'posts_per_page' => 5,
'orderby' => 'comment_count'
);
$my_posts = get_posts( $args );
foreach ( $my_posts as $key => $post ) {
echo $post->post_title; // Заголовок
echo $post->post_content; // Контент
}
get_the_content()
. Универсальных методов решения вашей задачи НЕТ. Вы можете разобрать строку регулярками или использовать какой-нибудь DOM-парсер, например Simple HTML DOM Parserthe_content
add_filter( 'the_content', 'filter_function_name_11' );
function filter_function_name_11( $content ) {
// Фильтр...
return $content;
}
<?php get_header(); ?>
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
<?php if ( have_posts() ) : ?>
<header class="page-header">
<?php
the_archive_title( '<h1 class="page-title">', '</h1>' );
the_archive_description( '<div class="taxonomy-description">', '</div>' );
?>
</header>
<?php while ( have_posts() ) :
the_post();
get_template_part( 'template-parts/content', get_post_format() );
endwhile;
the_posts_pagination(
array(
'prev_text' => __( 'Previous page', 'twentysixteen' ),
'next_text' => __( 'Next page', 'twentysixteen' ),
'before_page_number' => '<span class="meta-nav screen-reader-text">' . __( 'Page', 'twentysixteen' ) . ' </span>',
)
);
else :
get_template_part( 'template-parts/content', 'none' );
endif; ?>
</main>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>
get_category_link()
по переданному $category_id. На будущее вам пригодится иерархия шаблонов WordPress <?php get_header(); ?>
<div id="primary" class="content-area">
<main id="main" class="site-main">
<?php while ( have_posts() ) :
the_post();
get_template_part( 'content', get_post_format() );
if ( comments_open() || get_comments_number() ) :
comments_template();
endif;
the_post_navigation(
array(
'next_text' => '<span class="meta-nav" aria-hidden="true">' . __( 'Next', 'twentyfifteen' ) . '</span> ' .
'<span class="screen-reader-text">' . __( 'Next post:', 'twentyfifteen' ) . '</span> ' .
'<span class="post-title">%title</span>',
'prev_text' => '<span class="meta-nav" aria-hidden="true">' . __( 'Previous', 'twentyfifteen' ) . '</span> ' .
'<span class="screen-reader-text">' . __( 'Previous post:', 'twentyfifteen' ) . '</span> ' .
'<span class="post-title">%title</span>',
)
);
endwhile; ?>
</main>
</div>
<?php get_footer(); ?>