Включить с параметрами
Это то, что я использовал в своем недавнем проекте Wordpress
Сделать функцию functions.php
:
function get_template_partial($name, $parameters) {
// Path to templates
$_dir = get_template_directory() . '/partials/';
// Unless you like writing file extensions
include( $_dir . $name . '.php' );
}
Получить параметры в cards-block.php
:
// $parameters is within the function scope
$args = array(
'post_type' => $parameters['query'],
'posts_per_page' => 4
);
Позвоните по шаблону index.php
:
get_template_partial('cards-block', array(
'query' => 'tf_events'
));
Если вы хотите перезвонить
Например, общее количество отображаемых сообщений:
Измените functions.php
на это:
function get_template_partial($name, $parameters) {
// Path to templates
$_dir = get_template_directory() . '/partials/';
// Unless you like writing file extensions
include( $_dir . $name . '.php' );
return $callback;
}
Изменить cards-block.php
на это:
// $parameters is within the function scope
$args = array(
'post_type' => $parameters['query'],
'posts_per_page' => 4
);
$callback = array(
'count' => 3 // Example
);
Измените index.php
на это:
$cardsBlock = get_template_partial('cards-block', array(
'query' => 'tf_events'
));
echo 'Count: ' . $cardsBlock['count'];