Bel plug-in. Esempio di utilizzo su un tema (provato con venti Quindici):
1. pagina modello personalizzato
Creare il file page-pjax.php
all'interno del tema.
All'amministratore, creare una pagina e utilizzare questo modello. Mostra semplicemente link di archivio con un intervallo intorno a loro.
<?php
/**
* Template Name: Pjax Example
*/
get_header(); ?>
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
<?php
$args = array(
'type' => 'daily',
'limit' => '',
'format' => 'html',
'before' => '<span class="a-pjax">',
'after' => '</span>',
'show_post_count' => true,
'echo' => 1,
'order' => 'DESC'
);
wp_get_archives($args);
?>
<div id="pjax-container"></div>
</main>
</div>
<?php get_footer(); ?>
2. plug Add pjax e uno script personalizzato
All'interno della cartella /js
sul tema aggiungere jquery.pjax.js
e il seguente script my-pjax.js
.
jQuery(document).ready(function($) {
$(document).pjax('span.a-pjax a, #recent-posts-2 a', '#pjax-container', {fragment:'#main'})
});
3.Load jQuery, pjax e il nostro script personalizzato
In functions.php
. Carica solo nella pagina del modello.
add_action('wp_enqueue_scripts', 'load_scripts_so_43903250');
function load_scripts_so_43903250() {
if (is_page_template('page-pjax.php')) {
wp_register_script('pjax', get_stylesheet_directory_uri() . '/js/jquery.pjax.js');
wp_enqueue_script('my-pjax', get_stylesheet_directory_uri() . '/js/my-pjax.js', array('jquery','pjax'));
}
}
4. NOTE
$(document).pjax(
'span.a-pjax a, #recent-posts-2 a', // ANCHORS
'#pjax-container', // TARGET
{fragment:'#main'} // OPTIONS
);
ancore sono l'archivio collega e il widget messaggi recenti che ha il ID #recent-posts-2
. Rimuoverlo per questo test o aggiungere un altro contenitore di collegamenti come desiderato.
TARGET è hardcoded sul modello.
OPZIONI, il frammento è essenziale in quanto pjax non carica pagine HTML complete, dobbiamo dirgli quale parte della pagina di destinazione vogliamo.
Su Twenty Fifteen, il contenuto si trova all'interno di questo div: <main id="main" class="site-main" role="main">
. Regola in base al tema utilizzato.
vedi note pjax: https://github.com/defunkt/jquery-pjax#response-types-that-force-a-reload
E' il vostro tema in HTML5? –
Quindi l'hai risolto? – MechanisM