function reindex() { try { echo Indexer::reindex($_POST['page']); } catch (\Exception $ex) { header("HTTP/1.0 500 Internal Server Error"); echo $ex->getMessage(); } die; }
<?php namespace elasticsearch; add_action('wp_ajax_esreindex', function () { try { echo Indexer::reindex($_POST['page']); } catch (\Exception $ex) { header("HTTP/1.0 500 Internal Server Error"); echo $ex->getMessage(); } die; }); add_action('admin_head-toplevel_page_elastic_search', function () { wp_enqueue_script('es-indexing', plugins_url('/manage-index.js', __FILE__), array('jquery')); wp_localize_script('es-indexing', 'indexing', array('ajaxurl' => admin_url('admin-ajax.php'), 'total' => Indexer::get_count(), 'perpage' => Indexer::per_page())); }); add_filter('nhp-opts-saved-text-elasticsearch', function ($default) { if (get_transient('es-wiped') == 1) { return '<strong>The index has been wiped.</strong>'; delete_transient('es-wiped'); } if (get_transient('es-indexed') == 1) { return '<strong>The index has been populated.</strong>'; delete_transient('es-indexed'); } return $default; }); add_action('nhp-opts-options-validate-elasticsearch', function () { if (isset($_POST['wipe']) && $_POST['wipe']) { try {
public function testMapDate() { update_option('fields', array('post_date' => 1)); register_post_type('post'); wp_insert_post(array('post_type' => 'post', 'post_date' => '07/30/1989 00:00:00 CST')); wp_insert_post(array('post_type' => 'post', 'post_date' => '10/30/1988 00:00:00 CST')); Indexer::_map(); Indexer::reindex(); $this->index->refresh(); $search = new \Elastica\Search($this->index->getClient()); $search->addIndex($this->index); $results = $search->search(new \Elastica\Query(array('sort' => array('post_date' => array('order' => 'asc')))))->getResults(); $this->assertCount(2, $results); $this->assertEquals(2, $results[0]->getId()); $this->assertEquals(1, $results[1]->getId()); $results = $search->search(new \Elastica\Query(array('sort' => array('post_date' => array('order' => 'desc')))))->getResults(); $this->assertCount(2, $results); $this->assertEquals(1, $results[0]->getId()); $this->assertEquals(2, $results[1]->getId()); }