.round {
max-width: 827px;
height:0;
padding-top:30%;
width: 100%;
}
import Nunjucks from './nunjucks'; // Импортируем Nunjucks из нашего файла конфигурации (см. ниже)
{
test: /\.njk$/,
use: {
loader: 'html-loader',
options: {
preprocessor: (content, loaderContext) => {
let result;
try {
loaderContext.addContextDependency(loaderContext.context);
loaderContext.addDependency(PATHS.njkConfig); // PATHS.njkConfig - путь к файлу конфигурации
result = Nunjucks.renderString(content); // или `Nunjucks.render(loaderContext.resourcePath)`
} catch (error) {
loaderContext.emitError(error);
return content;
}
return result;
},
minimize: false
}
}
}
import Nunjucks from 'nunjucks';
// PATHS.pages - путь к папке с файлами Nunjucks
const env = Nunjucks.configure(PATHS.pages, {
noCache: true
});
// Тут можно задавать всякие фильтры и глобальные переменные, например:
// const isArray = value => Array.isArray(value);
// env.addFilter('isArray', isArray);
// env.addGlobal('projectName', 'mySuperProject');
export default Nunjucks;
content: ""
делает так, чтобы у blockquote исчезли кавычки — на случай, если вторая строка content: none
не поддерживается браузером, потому что первая строка — это CSS 2, а вторая — это CSS 2.1. В одну строку их записать нельзя, потому что по стандарту для свойства «content» нельзя комбинировать ключевые слова «normal» и «none» с другими значениями..some-class {
background: #e66465;
background: linear-gradient(#e66465, #9198e5);
}
npm install git+https://github.com/author/repo_name.git
import variable from 'repo_name'
$query = new WP_Query( array(
'post_type' => $type, // Ваш тип записи
'posts_per_page' => -1,
'tax_query' => array(
array(
'taxonomy' => $tax, // Такса типа записи
'field' => 'slug',
'terms' => $term // Нужный терм
)
)
) );
$all_tags = [];
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
$cur_terms = get_the_terms( $post->ID, $post_tag ); // $post_tag - нужная таксономия (если это стандартная метка поста, то $post_tag = 'post_tag')
if( is_array( $cur_terms ) ){
foreach( $cur_terms as $cur_term ){
$all_tags[] = $cur_term->term_id;
}
}
}
}
// Возвращаем оригинальные данные поста. Сбрасываем $post.
wp_reset_postdata();
$all_tags = array_unique($all_tags); // Оставляем уникальные значения в массиве
echo '<ul>';
$i = 0;
foreach ( $all_tags as $tag ) {
$class_active = $i === 0 ? ' tab-active' : ''; // для первой кнопки ставим активный класс
$tag_name = get_term( intval( $tag ) )->name; // Наименование метки
echo '<li class="tab-caption' . $class_active . '">' . $tag_name . '</li>';
$i++;
}
echo '</ul>';
echo '<div>';
$k = 0;
foreach ( $all_tags as $tag ) {
$class_active = $k === 0 ? ' tab-active' : '';
echo '<div class="tab-content' . $class_active . '">';
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
if ( has_term( intval( $tag ), $post_tag ) ) { // Выводим только те посты, в которых есть текущая метка в цикле
the_content(); // Здесь вывод данных поста. Как вариант - get_template_part( 'path/to/template' );
}
}
}
// Возвращаем оригинальные данные поста. Сбрасываем $post.
wp_reset_postdata();
echo '</div>';
$k++;
}
echo '</div>';