$fields['url']);*/ $fields_dup['data'] = array("postid" => $post->ID, "sharelink" => $fields['url']); $url = wp_get_attachment_url( get_post_thumbnail_id($post->ID) ); $fields_dup['big_picture'] = $url; $fields_dup['buttons'] = '[{"id": "id1", "text": "Settings", "icon": "ic_menu_manage"}, {"id": "id2", "text": "Share", "icon": "ic_menu_share"}]'; unset($fields_dup['url']); /* Send another notification via cURL */ $ch = curl_init(); $onesignal_post_url = "https://onesignal.com/api/v1/notifications"; /* Hopefully OneSignal::get_onesignal_settings(); can be called outside of the plugin */ $onesignal_wp_settings = OneSignal::get_onesignal_settings(); $onesignal_auth_key = $onesignal_wp_settings['app_rest_api_key']; curl_setopt($ch, CURLOPT_URL, $onesignal_post_url); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Authorization: Basic ' . $onesignal_auth_key )); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, true); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields_dup)); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // Optional: Turn off host verification if SSL errors for local testing // curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); /* Optional: cURL settings to help log cURL output response curl_setopt($ch, CURLOPT_FAILONERROR, false); curl_setopt($ch, CURLOPT_HTTP200ALIASES, array(400)); curl_setopt($ch, CURLOPT_VERBOSE, true); curl_setopt($ch, CURLOPT_STDERR, $out); */ $response = curl_exec($ch); /* Optional: Log cURL output response fclose($out); $debug_output = ob_get_clean(); $curl_effective_url = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL); $curl_http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); $curl_total_time = curl_getinfo($ch, CURLINFO_TOTAL_TIME); onesignal_debug('OneSignal API POST Data:', $fields); onesignal_debug('OneSignal API URL:', $curl_effective_url); onesignal_debug('OneSignal API Response Status Code:', $curl_http_code); if ($curl_http_code != 200) { onesignal_debug('cURL Request Time:', $curl_total_time, 'seconds'); onesignal_debug('cURL Error Number:', curl_errno($ch)); onesignal_debug('cURL Error Description:', curl_error($ch)); onesignal_debug('cURL Response:', print_r($response, true)); onesignal_debug('cURL Verbose Log:', $debug_output); } */ curl_close($ch); return $fields; } ?> why do birds sing? | Amazing Facts

Why do birds sing?

Amazing Facts

Why do birds sing?

The song of birds is one of the loveliest sounds in nature, which is amazing and which is incomparable with any musical. When birds sing they are actually communicating with one another. Of course, at times the sounds birds make are mere expressions of joy. However, for the most part, the sounds are attempts of communication.

When wild birds migrate at night, they cry out. These cries may keep the birds together and help lost ones return to the flock we can say it is one way of communication.

bird singing song

bird singing song

Birds do not learn how to sing, it is an inborn instinct with them. It does not mean that birds cannot learn to sing. In fact, some birds can learn the songs of other birds. If a canary was brought up with a nightingale, it could give quite a good intimation of the nightingale’s song. Everyone knows how a parrot can intimate the sounds that it hears.

Amazing facts about Birds

  1. Birds sing to attract its partner.
  2. A mother hen makes sounds that warn her chicks of danger and causes them to crouch down motionless. Then she gives another call, which collects them together.sn-hummingbirdH
  3. Humming birds can fly backward.
  4. Bee humming bird is the smallest bird in the world which measures only 5 cm
  5. scientist believe that birds evolved from Theropod dinosaurs.
  6. Around 20% birds migrate long distance every year for different reasons.
  7. In ancient Greece, Pigeons delivered the results of Olympic games. Rose-ringed_Parakeet_Psittacula_krameri_male_by_Dr._Raju_Kasambe_DSCN8937_(3)
  8. parrots can learn more than 100 words.