У меня есть более простое решение, использующее стандартные рекомендации AJAX WordPress.В вашем functions.php добавьте следующий код:
add_action('wp_ajax_posts_by_tag', 'ajax_posts_by_tag');
add_action('wp_ajax_nopriv_posts_by_tag', 'ajax_posts_by_tag');
function ajax_posts_by_tag() {
$q = new WP_Query('tag=' . $_POST['tag'])
echo '<ul>';
while ($q->have_posts())
{
$q->the_post();
echo '<li>' . $q->post->post_title . '</li>';
}
echo '</ul>';
die();
}
Затем, внутри вашего javascript на домашней странице, используйте следующий метод для получения содержимого по тегу (при условии, что вы используете jQuery):
jQuery(document).ready(function($) {
var data = {
action: 'posts_by_tag',
tag: 'my-tag'
};
jQuery.post(ajaxurl, data, function(response) {
alert(response);
});
});
Что-то в этом роде.Затем вы можете втиснуть ответ в любой блок на странице.Будет извлекаться для сообщений с тегом my-tag.