please try the following for any host... Click on one Host who has Status Pending and click on the "Re-schedule the next check of this host".
Which Template have you use for you external hosts? You know, that you defined that under "use" in the define_host Directive.
But this "use" directive is not mandatory... You can define all commands under the define_host directive.
If you have use a standard Template like linux-server, windows-server... make sure that in the File timeperiods.cfg a Entrance for the Periods "24x7" exist.
If there is no Entrance for this Periode, use this:
alias 24 Hours A Day, 7 Days A Week
And if you use your own Template, make sure that you have defined the Host Check Directives...
check_period 24x7 ; By default, Windows servers are monitored round the clock
check_interval 5 ; Actively check the server every 5 minutes
retry_interval 1 ; Schedule host check retries at 1 minute intervals