setCacheDir( APTFPINbyTAP_CACHE );
if( $cache->exists($key) ) {
$results = $cache->get($key);
$results = @unserialize($results);
if( count($results) ){
$results['hidden'] .= '';
return $results;
}
}
}
$message = '';
$hidden = '';
$continue = false;
$feed_found = false;
$APTFPINbyTAP_linkurl = array();
$APTFPINbyTAP_photocap = array();
$APTFPINbyTAP_photourl = array();
// Determine image size id
switch ($pinterest_options['pinterest_photo_size']) {
case 75:
$APTFPINbyTAP_size_id = '_t.';
break;
case 192:
$APTFPINbyTAP_size_id = '_b.';
break;
case 554:
$APTFPINbyTAP_size_id = '_c.';
break;
case 600:
$APTFPINbyTAP_size_id = '_f.';
break;
case 930:
$APTFPINbyTAP_size_id = '.';
break;
}
///////////////////////////////////////////////////
/// If nothing found, try using xml and rss_200 ///
///////////////////////////////////////////////////
if ( !function_exists('simplexml_load_file') ) {
$pinterest_uid = apply_filters( APTFPINbyTAP_HOOK, empty($pinterest_options['pinterest_user_id']) ? '' : $pinterest_options['pinterest_user_id'], $pinterest_options );
switch ($pinterest_options['pinterest_source']) {
case 'user':
$request = 'http://pinterest.com/'.$pinterest_uid.'/feed.rss';
break;
case 'board':
$pinterest_board = apply_filters( APTFPINbyTAP_HOOK, empty($pinterest_options['pinterest_user_board']) ? '' : $pinterest_options['pinterest_user_board'], $pinterest_options );
$request = 'http://pinterest.com/'.$pinterest_uid.'/'.$pinterest_board.'/rss';
break;
}
$_pinteresturl = @urlencode( $request ); // just for compatibility
$_pinterest_xml = @simplexml_load_file( $_pinteresturl,"SimpleXMLElement",LIBXML_NOCDATA); // @ is shut-up operator
if($_pinterest_xml===false){
$hidden .= '';
$continue = false;
}else{
$APTFPINbyTAP_title = $_pinterest_xml->channel->title;
$APTFPINbyTAP_link = $_pinterest_xml->channel->link;
if(!$_pinterest_xml && !$_pinterest_xml->channel){
$hidden .= '';
$continue = false;
}else{
$s = 0; // simple counter
foreach( $_pinterest_xml->channel->item as $p ) { // This will prevent empty images from being added to APTFPINbyTAP_linkurl.
if( $s<$pinterest_options['pinterest_photo_number'] ){
// list of link urls
$APTFPINbyTAP_linkurl[$s] = (string) $p->link; // ->i is equivalent of ['i'] for objects
if($APTFPINbyTAP_linkurl[$s]){
$content = (string) $p->description;
// For Reference: regex references and http://php.net/manual/en/function.preg-match.php
// Using the RSS feed will require some manipulation to get the image url from pinterest;
// preg_replace is bad at skipping lines so we'll start with preg_match
// i sets letters in upper or lower case,
@preg_match( "/img(.*?)>/i", $content , $matches ); // First, get image from feed.
// Next, strip away everything surrounding the source url.
// . means any expression, and + means repeat previous
$APTFPINbyTAP_photourl_current = @preg_replace(array('/(.*)src="/i','/"(.*)/') , '',$matches[ 0 ]);
//echo $APTFPINbyTAP_photourl_current;
// Finally, change the size. [] specifies single character and \w is any word character
$APTFPINbyTAP_photourl[$s] = @preg_replace('/[_]\w[.]/', $APTFPINbyTAP_size_id, $APTFPINbyTAP_photourl_current );
$APTFPINbyTAP_originalurl[$s] = @preg_replace('/[_]\w[.]/', '.', $APTFPINbyTAP_photourl_current );
$APTFPINbyTAP_photocap[$s] = (string) $p->title;
}
$s++;
}
else{
break;
}
}
if(!empty($APTFPINbyTAP_linkurl) && !empty($APTFPINbyTAP_photourl)){
if( $pinterest_options['pinterest_display_link'] ) {
$linkStyle = $pinterest_options['pinterest_display_link_style'];
if ($linkStyle == 'large') {
$APTFPINbyTAP_user_link .= '';
$APTFPINbyTAP_user_link .= '
';
$APTFPINbyTAP_user_link .= '';
} elseif ($linkStyle == 'medium') {
$APTFPINbyTAP_user_link .= '';
$APTFPINbyTAP_user_link .= '
';
$APTFPINbyTAP_user_link .= '';
} elseif ($linkStyle == 'small') {
$APTFPINbyTAP_user_link .= '';
$APTFPINbyTAP_user_link .= '
';
$APTFPINbyTAP_user_link .= '';
} elseif ($linkStyle == 'tiny') {
$APTFPINbyTAP_user_link .= '';
$APTFPINbyTAP_user_link .= '
';
$APTFPINbyTAP_user_link .= '';
} elseif ($linkStyle == 'text') {
$APTFPINbyTAP_user_link .= '
';
$APTFPINbyTAP_user_link .= '';
} elseif ($linkStyle == 'medium') {
$APTFPINbyTAP_user_link .= '';
$APTFPINbyTAP_user_link .= '
';
$APTFPINbyTAP_user_link .= '';
} elseif ($linkStyle == 'small') {
$APTFPINbyTAP_user_link .= '';
$APTFPINbyTAP_user_link .= '
';
$APTFPINbyTAP_user_link .= '';
} elseif ($linkStyle == 'tiny') {
$APTFPINbyTAP_user_link .= '';
$APTFPINbyTAP_user_link .= '