Last active
December 6, 2022 17:58
-
-
Save nathanaelphilip/1063641c3a8c8d84530d to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# phrets_hourly is the WP_CRON hook | |
add_action('phrets_hourly', 'run_listings_update' ); | |
function run_listings_update(){ | |
$fetch = new Fetcher(); | |
$fetch->fetch(); | |
} | |
# This is the code inside the $fetch object that is run. | |
public function fetch(){ | |
$options['class'] = 'RES'; | |
$options['limit'] = 10; | |
$options['offset'] = 0; | |
$options['silent'] = true; | |
$data = $this->query($options); | |
foreach ($data as $datum) { | |
$this->place($datum,true); | |
} | |
} | |
public function place($data,$silent){ | |
$rets = $this->connect_to_rets(); | |
$listing = new Listing($data); | |
// check to see if listing already exists | |
$post_id = $listing->check_listing_exists($data['MST_MLS_NUMBER']); | |
if (!$post_id) { | |
$action = $listing->put(); | |
}else{ | |
$action = $listing->update($post_id); | |
} | |
} | |
# this is the method called from the $listing object that puts the data into the DB | |
public function put(){ | |
$title = $this->create_title($this->data); | |
// setup the 'post' data | |
$post = array( | |
'post_type' => 'listing', | |
'post_title' => $title, | |
'post_content' => $this->data['Remarks'], | |
'post_status' => 'publish' | |
); | |
// add new meta data | |
if (!is_wp_error($post_id)) { | |
$this->add_meta_data($post_id); | |
$this->assign_community($post_id,$data); | |
} | |
// set the action | |
$action = 'inserted'; | |
return $action; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment