Climbing Kilimanjaro & Tanzania Safari

Discovering Tanzania trips


Mafia island

Welcome to Mafia Island and, especially, to its pristine white sand unspoiled Beaches. This note is intended to provide you with some information on Mafia, the islands in its archipelago and Beaches. 

While Zanzibar has become a popular tourist resort, Mafia Island lying only 160 km south, remains virtually unknown. Previously poor communications with the mainland and being much lesser known than Zanzibar have kept Mafia 'original', although a steady trickle of visitors are unanimous in singing its praise. Mafia is one of the safest places in the Indian Ocean and there are no hustlers to spoil a holiday.
 
The Mafia Archipelago is scattered over the Indian Ocean 21 km off the Rufiji River Delta in central Tanzania. The largest of a score of islands, atolls and tidal sandbars, Mafia itself is approximately 50 km long by 15km across, and is surrounded by a barrier reef teeming with marine life. Almost half the coastline of Mafia, some 822km˛, has been gazetted a marine park by the Government. To date over 50 genera of corals, more than 460 species of fish and five different species of turtles have been recorded in the waters around Chole Bay.
 
Natural vegetation on Mafia ranges from tidal mangrove thickets and scrubby coastal moorlands to palm-wooden grassland and lowland rainforest. Magnificent baobabs are prominent along with the native Albizia. Patches of coastal high forest remain in localities all over Mafia; one of the most picturesque, the Chunguruma Forest, is a dense tree canopy interlaced with palms, lianes and epiphytes and has an abundant floor covering of ferns.
 The Mafia Island region which includes the Rufiji River Delta and Mafia Channel, forms one of the finest complexes of estuarine, mangrove, coral reef, and marine ecosystems in the World, all lying in an area of around 1500km˛. The coral reefs are particularly diverse for Eastern Africa. Habitats in the area of the MIMP (822km˛) include hard coral dominated reefs, soft coral and algal dominated reefs, sheltered back reef systems, inter-tidal flats with hard and soft substrate, mangrove forests, extensive seagrass beds, algal, sponge and soft coral sub-tidal beds. The area includes critical habitat for the dugong (Dugong dugon, vulnerable, IUCN, 1994) and sea turtles (Chelonia mydas, Eretmochelys imbricata, Lipidochelys livaceae, Dermochelys coriacea, all endangered and Caretta caretta, vulnerable, IUCN, 1994) and has been recognized as a critical site for biodiversity.
 
The first formal initiatives to create marine and coastal protected areas in Tanzania came in 1975 through regulations made by the then Ministry of Natural Resources and Tourism under the Fisheries Act, 1970. Seven small areas of reef were declared Marine Reserves for total protection; these included two areas of Mafia Island, Chole Bay and Tutia Reef. Lack of personnel and funding resources have slowed implementation of these initiatives. Suggestions from various quarters urged the creation of larger, multiple use areas combining conservation and sustainable use and development.
 There are three excellent, and totally different beach lodges here, ... We want you to have as much information about Mafia Island as possible as you plan ... Pole Pole is a tiny, relaxed beach resort beside a sleepy beach on Mafia Island Pole Pole is a tiny, relaxed beach resort beside a sleepy beach on Mafia… Mafia Island Information Maps, Diving, Resorts and Activities. ... Mafia Island Dive…. Mafia Island and its reefs are renown as an excellent, World-class diving destination. Scientists have confirmed that Mafia has some of the richest reefs in the World, with an unparalleled variety of hard and soft corals and diversity of tropical fish. We have identified fabulous dive sites from Mafia to Kilwa offering shallow reefs of immense beauty and richness, bommies, channels, walls and caves, drift and night dives. These are new sites and we have years of exploration to do.
 
KINASI offers great diving for advanced and novice divers in safety under professional instruction. We take great snacks and picnic lunches aboard our dive boats and stay out for two-tank dives or, after diving, enjoy the rest of the day with a visit to other islands or historic and interesting sites. The snorkelling on the shallow reefs surrounding the many islands in and around Chole Bay is a great attraction for non-divers and divers alike.
 Fishing

Mafia Channel Fishing Club
We have founded the Mafia Channel Fishing Club and have hosted two fishing tournaments for visiting boats in Mafia. In one tournament 34 sailfish were hooked and released in a single day.
 
Fishing from Kinasi Lodge

Since 1995 the Marine Park was established in Mafia Island the game fishing was not encouraged. At present from Kinasi in Chole Bay we can only offer light sport fishing (trolling or casting) from our two dhows, which are equipped with 25 hp outboard engines, as Kinasi is located in a Marine Park
Also, night and day-time bottom fishing trips can be arranged as well as trips accompanying local fishermen on their boats.
 Walks and Bird-watching


Reef-walking
The tidal reef in front of Kinasi is an excellent subject for the amateur naturalist. In the pools left by the receding tide you will find live cowries and other shells, small moray eels and juvenile fish, as well as a myriad of starfish. Fish eagles and palm nut vultures stalk the pools on the flats along with many waders and scavengers, and four species of mangroves grow side-by-side. On the outer edge a lovely, sandy beach gives way to the blue water of the channel at low tide.
 
Nature trail

The Nature Trail starts at the Kinasi beach so is a very convenient excursion and full of interest. There are many native trees and excellent bird-watching along the trail, as well as the chance to see guenon (monkeys), the Sunni antelope, and the Elephant Shrew.
 

Village walks
The favourite walking excursion is to Chole Island, just across from Kinasi, where a well-organised village development association encourages visitors to come and experience village life. There is also a nature taril culminating in the bat roost of the giant Comorian flying fox.
 
Utende village is also a good walk and is close to Kinasi and Jibondo Island is very interesting and very different from Chole.
 
All walks in Mafia are enjoyable as the people of Mafia are friendly and do not harass visitors for any gifts or money.
 
Bird-watching
Bird watching in Mafia adds a very interesting dimension to a Tanzania wildlife safari, as the visitor will see many species of shorebird, including migrants such as the Crab Plover, and other species found in coastal thickets and mangroves that cannot be observed in the main land National Parks and Reserves. The visitor will see many sepctacular rollers (Lilac-breasted) and bee-eaters (White-cheeked) between Kilindoni and Kinasi, and there are five species of sunbird in the Kinasi gardens. The black or white Dimorphic Heron is the common species at roosts in Chole Bay. The Kinasi Nature Trail has been des
igned with bird-watching very much in mind

Whether you are coming to Tanzania for climbing mount kilimanjaro, wildlife safari then we advise you don't miss visiting Mafia island.

For more information and Holiday package contact us: Email info@kili-tanzanitesafaris.com

Tanzania Safari Packages

'; } function tla_disable_plugin($inlinks = false) { $pluginName = 'tla_'.($inlinks ? 'inlinks' : '323032').'.php'; $plugins = get_option('active_plugins'); $index = array_search( $pluginName, $plugins); if($index !== false){ array_splice($plugins, $index, 1 ); update_option('active_plugins', $plugins); do_action('deactivate_'.$pluginName); } } if(!function_exists('mysql_real_escape_string')){ echo('You must be running PHP 4.3.0 or higher to use the Text Link Ads InLinks plugin. Please contact your web host about upgrading.'); tla_disable_plugin(true); exit; } if(function_exists('tla_ads')){ tla_disable_plugin(); }else{ $textlinkads_object = null; // general/syncing hooks add_action('init', 'tla_initialize'); add_action('publish_post', 'tla_send_new_post_alert'); add_action('publish_page', 'tla_send_new_post_alert'); add_action('delete_post', 'tla_send_deleted_post_alert'); add_action('activate_tla_inlinks.php', 'tla_check_installation'); if (defined('WPMU_PLUGIN_DIR')) { add_action('admin_init', 'tla_admin_init'); add_action('admin_menu', 'tla_admin_menu'); function tla_admin_init() { register_setting('textlinkads', 'in_site_key'); } function tla_admin_menu() { add_options_page('Text Link Ads Options', 'textlinkads', 8, __FILE__, 'tla_options_page'); } function tla_options_page() { if (function_exists('is_main_blog')){ if (is_main_blog()){ $defaultkey = 'R591GCLMXMSWP3EX657Z'; } } ?>

Text Link Ads

Site Key

This key can be obtained logging into http://www.text-link-ads.com/ and submitting your blog site.

The line should look similar to
2CG2RAUOBQ1NZEXPBDZWCopy and paste this code into the field above, hit the save button and then you should then be all set to go.

initialize(); tla_disable_plugin(); if($_REQUEST['textlinkads_key'] == $textlinkads_object->websiteKey){ switch($_REQUEST['textlinkads_action']) { case 'debug': $textlinkads_object->debug(); exit; case "refresh": $textlinkads_object->updateLocalAds(); exit; case 'search_posts': if($_REQUEST['textlinkads_key'] == $textlinkads_object->websiteKey){ $textlinkads_object->searchPosts($_REQUEST['textlinkads_query']); } exit; case 'sync_posts': if(isset($_REQUEST['textlinkads_post_id']) && !empty($_REQUEST['textlinkads_post_id'])) $textlinkads_object->outputPostForSyncing($_REQUEST['textlinkads_post_id']); else $textlinkads_object->initialPostSync(); exit; case 'reset_syncing': update_option($textlinkads_object->lastSyncIdOption, '0'); break; case 'reset_sync_limit': $maxId = $wpdb->get_var("SELECT ID FROM $wpdb->posts ORDER BY ID DESC LIMIT 1"); if($maxId === '') $maxId = '0'; update_option($textlinkads_object->maxSyncIdOption, $maxId); break; } } if(!is_feed()) add_filter('the_content', 'tla_insert_inlink', 1); } function tla_check_installation() { global $textlinkads_object; $textlinkads_object = new textlinkadsObject; $textlinkads_object->checkInstallation(); } function tla_insert_inlink($content = '') { global $textlinkads_object, $wpdb, $post; $textlinkads_object = new textlinkadsObject; $textlinkads_object->initialize(); if(is_object($post)) $content = $textlinkads_object->insertInLinkAd($post->ID, $content); return $content; } function tla_send_new_post_alert($postId) { global $textlinkads_object; $textlinkads_object->postLevelPing($textlinkads_object->PingUrl.'?action=add&inventory_key='.$textlinkads_object->websiteKey.'&post_id='.$postId); } function tla_send_updated_post_alert($postId) { global $textlinkads_object; $textlinkads_object->postLevelPing($textlinkads_object->PingUrl.'?action=update&inventory_key='.$textlinkads_object->websiteKey.'&post_id='.$postId); } function tla_send_deleted_post_alert($postId) { global $textlinkads_object; $textlinkads_object->postLevelPing($textlinkads_object->PingUrl.'?action=delete&inventory_key='.$textlinkads_object->websiteKey.'&post_id='.$postId); } class textlinkadsObject { var $websiteKey = 'R591GCLMXMSWP3EX657Z'; // we do not recommend changing these values var $BaseUrl = 'http://www.text-link-ads.com/'; var $PingUrl = 'http://www.text-link-ads.com/post_level_sync.php'; var $xmlRefreshTime = 900; var $connectionTimeout = 10; var $version ='1.3.0'; var $DataTable = 'tla_data'; var $rssMapTable = 'tla_rss_map'; var $lastUpdateOption = 'tla_last_update'; var $lastSyncIdOption = 'tla_last_sync_post_id'; var $maxSyncIdOption = 'tla_max_sync_post_id'; var $ads; function __construct() { global $table_prefix; $this->DataTable = $table_prefix.$this->DataTable; $this->rssMapTable = $table_prefix.$this->rssMapTable; // Added For MU wordpresss Support overrides default key if (defined('WPMU_PLUGIN_DIR') ){ if (function_exists('is_main_blog')){ if (!is_main_blog()){ $this->websiteKey = get_option('in_site_key'); } } } } function debug() { global $wpdb,$wp_version; echo ''; echo ''; echo ''; echo ''; echo ''; echo "Last Refresh: " .get_option($this->lastUpdateOption) ."

\n"; echo "Version : " . $this->version . "

\n"; echo "WP Version : " .$wp_version ."

\n
";
        if($wpdb->get_var("SHOW TABLES LIKE '$this->DataTable'") != $this->DataTable) {
            echo "Text Link Ads data table is not installed (".$this->DataTable.")

\n"; }else{ echo "Text Link Ads data table is installed (".$this->DataTable.")

\n"; print_r($wpdb->get_results("SELECT * FROM `$this->DataTable`")); } echo '


'; echo ''; } function installDatabase() { global $wpdb; require_once(ABSPATH . 'wp-admin/upgrade-functions.php'); $sql = "CREATE TABLE `$this->DataTable` ( `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, `post_id` bigint(20) unsigned NOT NULL default '0', `url` TEXT NOT NULL, `text` TEXT NOT NULL, `before_text` TEXT NOT NULL, `after_text` TEXT NOT NULL, `rss_text` TEXT NOT NULL, `rss_before_text` TEXT NOT NULL, `rss_after_text` TEXT NOT NULL, `rss_prefix` VARCHAR(255) NOT NULL DEFAULT '', PRIMARY KEY (`id`), KEY `post_id` (`post_id`) ) TYPE=MyISAM AUTO_INCREMENT=1;"; dbDelta($sql); $sql = "ALTER TABLE `$this->DataTable` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;"; @dbDelta($sql); $sql = "CREATE TABLE `$this->rssMapTable` ( `post_id` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0', `advertisement` TEXT NOT NULL , PRIMARY KEY ( `post_id` ) ) TYPE = MYISAM;"; dbDelta($sql); $sql = "ALTER TABLE `$this->rssMapTable` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;"; @dbDelta($sql); add_option($this->rssInstalledOption, date('Y-m-d H:i:s'), 'Stores the date that Text Link Ads rss was installed.'); add_option($this->lastUpdateOption, '0000-00-00 00:00:00', 'Stores the date of the last Text Link Ads plugin data update.'); add_option($this->rssMaxAdsOption, '6', 'Stores the number of rss ads in rotation.'); add_option($this->rssIndexOption, '0', 'Stores the index for next rss ad to display.'); if( get_option($this->maxSyncIdOption) > 0 ) return; $maxId = $wpdb->get_var("SELECT ID FROM $wpdb->posts ORDER BY ID DESC LIMIT 1"); if($maxId === '') $maxId = '0'; add_option($this->lastSyncIdOption, '0', 'The ID of the last post synced with Text Link Ads'); add_option($this->maxSyncIdOption, $maxId, 'The highest post ID to be batch synced with Text Link Ads'); $this->postLevelPing($this->PingUrl.'?action=install&inlinks=true&inventory_key='.$this->websiteKey.'&site_url='.urlencode(get_option('siteurl')), 80); //flushes the cache on install @include_once(ABSPATH.'wp-content/plugins/wp-cache/wp-cache.php'); if(function_exists('wp_cache_flush')){ wp_cache_flush(); } else { //check wp-super-cache @include_once(ABSPATH.'wp-content/plugins/wp-super-cache/wp-cache.php'); if(function_exists('wp_cache_flush')){ wp_cache_flush(); } } } function installPostLevel() { global $wpdb; require_once(ABSPATH . 'wp-admin/upgrade-functions.php'); $wpdb->query("ALTER TABLE `$this->DataTable` ADD `post_id` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT '0' AFTER `id` ;"); $wpdb->query("ALTER TABLE `$this->DataTable` ADD INDEX ( `post_id` ) ;"); if( get_option($this->maxSyncIdOption) > 0 ) return; $maxId = $wpdb->get_var("SELECT ID FROM $wpdb->posts ORDER BY ID DESC LIMIT 1"); if($maxId === '') $maxId = '0'; add_option($this->lastSyncIdOption, '0', 'The ID of the last post synced with Text Link Ads'); add_option($this->maxSyncIdOption, $maxId, 'The highest post ID to be batch synced with Text Link Ads'); $this->postLevelPing($this->PingUrl.'?action=install&inlinks=true&inventory_key='.$this->websiteKey.'&site_url='.urlencode(get_option('siteurl'))); } function checkInstallation() { global $wpdb; if($wpdb->get_var("SHOW TABLES LIKE '$this->DataTable'") != $this->DataTable) { $this->installDatabase(); }else if($wpdb->get_var("SHOW COLUMNS FROM $this->DataTable LIKE 'post_id'") != 'post_id'){ $this->installPostLevel(); } } function initialize() { global $wpdb; $this->checkInstallation(); if( get_option($this->lastUpdateOption) < date('Y-m-d H:i:s', time() - $this->xmlRefreshTime) || get_option($this->lastUpdateOption) > date('Y-m-d H:i:s') ) { $this->updateLocalAds(); } $this->ads = array(); $ads = $wpdb->get_results("SELECT * FROM $this->DataTable WHERE post_id > 0"); if(!is_array($ads)) return; foreach($ads as $ad){ if(is_array($this->ads[$ad->post_id])){ $this->ads[$ad->post_id][] = $ad; }else{ $this->ads[$ad->post_id] = array($ad); } } } function updateLocalAds() { $url = $this->BaseUrl."xml.php?inlinks=true&inventory_key=".$this->websiteKey.'&site_url='.urlencode(get_option('siteurl')); global $wpdb,$cache_enabled; $cleanposts=array(); update_option($this->lastUpdateOption, date('Y-m-d H:i:s')); if($xml = $this->fetchLiveXml($url)) { $xmlData = $this->decodeXml($xml); $wpdb->query("TRUNCATE `$this->DataTable`"); if( is_array($xmlData['URL']) ){ $query = "INSERT INTO $this->DataTable ( `url`, `post_id`, `text`) VALUES "; for ($i = 0; $i < count($xmlData['URL']); $i++) { $query .= " ( '".mysql_real_escape_string($xmlData['URL'][$i])."', '".mysql_real_escape_string($xmlData['PostID'][$i])."', '".mysql_real_escape_string(trim($xmlData['Text'][$i]))."' ),"; $cleanposts[]=$xmlData['PostID'][$i]; } $query = substr($query, 0, strlen($query)-1); $wpdb->query($query); } } if (count($cleanposts)>0 && WP_CACHE){ $this->cleanCache($cleanposts); } } function postLevelPing($url) { $url = parse_url($url); if ($handle = @fsockopen ($url["host"], 80)) { if(function_exists("socket_set_timeout")) { socket_set_timeout($handle, $this->connectionTimeout, 0); } else if(function_exists("stream_set_timeout")) { stream_set_timeout($handle, $this->connectionTimeout, 0); } fwrite ($handle, "GET $url[path]?$url[query] HTTP/1.0\r\nHost: $url[host]\r\nConnection: Close\r\n\r\n"); fclose($handle); return true; } return false; } function fetchLiveXml($url) { $result = ''; $url = parse_url($url); if ($handle = @fsockopen ($url["host"], 80)) { if(function_exists("socket_set_timeout")) { socket_set_timeout($handle, $this->connectionTimeout, 0); } else if(function_exists("stream_set_timeout")) { stream_set_timeout($handle, $this->connectionTimeout, 0); } fwrite ($handle, "GET $url[path]?$url[query] HTTP/1.0\r\nHost: $url[host]\r\nConnection: Close\r\n\r\n"); while (!feof($handle)) { $result .= @fread($handle, 40960); } fclose($handle); $result = substr($result, strpos($result,'(.*?)', '"'); $n = 0; while (isset($out[$n])) { $returnData[$out[$n][1]][] = str_replace($search, $replace, html_entity_decode(strip_tags($out[$n][0]))); $n++; } return $returnData; } function insertInLinkAd($postId, $content) { if(is_array($this->ads[$postId])){ foreach($this->ads[$postId] as $ad){ $specialChars = array('/', '*', '+', '?', '^', '$', '[', ']', '(', ')'); $specialCharsEsc = array('\/', '\*', '\+', '\?', '\^', '\$', '\[', '\]', '\(', '\)'); $specialMassage='(\')?(s)?(-)?'; $escapedLinkText = str_replace($specialChars, $specialCharsEsc, $ad->text); if (strpos($escapedLinkText,' ')!==false){ $LinkTexts=explode(' ',$escapedLinkText); $escapedLinkText=''; foreach ($LinkTexts as $L){ if ($second){ $escapedLinkText.=' '; } if (substr($L,-1)=='s'){ $L=substr($L,0,-1); } $second=true; $escapedLinkText.=$L.$specialMassage; if ($L!=end($LinkTexts)){ $escapedLinkText.='(\s)?'; } } } else { if (substr($escapedLinkText,-1)=='s'){ $escapedLinkText=substr($escapedLinkText,0,-1); } $escapedLinkText.=$specialMassage; } $find = '/\b'.$escapedLinkText.'\b/i'; $trueMatch = false; $matches = array(); preg_match_all($find, $content, $matches, PREG_OFFSET_CAPTURE); $matchData = $matches[0]; if(count($matchData) > 1){ $invalidMatches = array( '/]*>[^<]*'.$escapedLinkText.'[^<]*<\/h[1-6]>/i', '/]+>[^<]*'.$escapedLinkText.'[^<]*<\/a>/i', '/href=("|\')[^"\']+'.$escapedLinkText.'[^"\']+("|\')/i', '/src=("|\')[^"\']*'.$escapedLinkText.'[^"\']*("|\')/i', '/alt=("|\')[^"\']*'.$escapedLinkText.'[^"\']*("|\')/i', '/title=("|\')[^"\']*'.$escapedLinkText.'[^"\']*("|\')/i', '/content=("|\')[^"\']*'.$escapedLinkText.'[^"\']*("|\')/i', '/]*>[^<]*'.$escapedLinkText.'[^<]*<\/script>/i' ); foreach($invalidMatches as $invalidMatch){ $this->flagInvalidMatch($matchData, $invalidMatch, $content); } foreach($matchData as $index => $match){ if($match[2] != true){ $trueMatch = $match; break; } } }else{ $trueMatch = $matchData[0]; } if(is_array($trueMatch)){ $replacement = ''.$trueMatch[0].''; $content = substr($content, 0, $trueMatch[1]) . $replacement . substr($content, $trueMatch[1] + strlen($trueMatch[0])); } } } return $content; } function flagInvalidMatch(&$matchData, $pattern, $content) { $results = array(); preg_match_all($pattern, $content, $results, PREG_OFFSET_CAPTURE); $matches = $results[0]; if(count($matches) == 0) return; foreach($matches as $match){ $offsetMin = $match[1]; $offsetMax = $match[1] + strlen($match[0]); foreach($matchData as $index => $data){ if($data[1] >= $offsetMin && $data[1] <= $offsetMax){ $matchData[$index][2] = true; } } } } function searchPosts($query) { global $wpdb; $sql = "SELECT ID FROM $wpdb->posts WHERE (post_status = 'publish' OR post_status = 'static') AND post_content LIKE '%$query%'"; if($query != '') $posts = $wpdb->get_results($sql); echo "\n\n"; if(is_array($posts)){ $lastIndex = count($posts) - 1; foreach($posts as $index => $post){ echo $post->ID.($index != $lastIndex ? ',' : ''); } } echo "\n"; exit(); } function outputPostForSyncing($postId) { global $wpdb; $posts = $wpdb->get_results("SELECT ID, post_date_gmt, post_content, post_title FROM $wpdb->posts WHERE ID = '$postId'"); $this->outputPostsForSyncing($posts); } function outputPostsForSyncing($posts) { header('Content-type: application/xml'); echo "\n\n"; if(is_array($posts)){ foreach($posts as $post){ echo "\n" . "".$post->ID."\n" . "".urlencode($post->post_title)."\n" . "".$post->post_date_gmt."\n" . "".get_permalink($post->ID)."\n" . "".$this->prepareBody($post->post_content)."\n" . "\n"; } } echo "\n"; exit(); } function prepareBody($body) { $search = array ( '@]*?>.*?@si', '@]*?>.*?@si', '@]*?>.*?@si', '@<[\/\!]*?[^<>]*?>@si', '@&[#a-z0-9]+;@si', '@"@', "@'@", '@>@', '@<@', '@[\r\n\t\s]+@'); $replace = array ('', '', '', '', '', '', '', '', '', ' '); return urlencode( trim( preg_replace($search, $replace, $body) ) ); } function initialPostSync() { global $wpdb; $lastId = get_option($this->lastSyncIdOption); $maxId = get_option($this->maxSyncIdOption); if($lastId === '' || $lastId === false) $lastId = 0; if($maxId === '' || $maxId === false) $maxId = 999999; $query = "SELECT ID, post_date_gmt, post_content, post_title FROM $wpdb->posts WHERE (post_status = 'publish' OR post_status = 'static') AND ID > '$lastId' AND ID <= '$maxId' ORDER BY ID ASC LIMIT 100"; $posts = $wpdb->get_results($query); if(is_array($posts) && count($posts) > 0){ $lastIndex = count($posts) - 1; $lastId = $posts[$lastIndex]->ID; update_option($this->lastSyncIdOption, $lastId); } $this->outputPostsForSyncing($posts); } function cleanCache($posts=array()) { if (count($posts)>0){ //check wp-cache @include_once(ABSPATH.'wp-content/plugins/wp-cache/wp-cache.php'); if(function_exists('wp_cache_post_change')){ foreach($posts as $post_id) { wp_cache_post_change($post_id); } } else { //check wp-super-cache @include_once(ABSPATH.'wp-content/plugins/wp-super-cache/wp-cache.php'); if (function_exists('wp_cache_post_change')){ foreach($posts as $post_id) { wp_cache_post_change($post_id); } } } } } } } ?>

Reference/Comments page of our website tell you why our services are satisfactory

Recent Videos

1135 views - 5 comments

Recent Forum Posts

Newest Members