Comment avoir la météo de Sina dans wordpress ?
wordpress Obtenez la météo Sina pour créer la météo dans la barre latérale WordPress (plug-in wordpress)
Recommandé : "tutoriel wordpress"
WordPress récupère la météo de Sina et crée une météo dans la barre latérale du blog. Il suffit de mettre le code php suivant directement dans la barre latérale. Bien sûr, cela peut également être fait ailleurs
Il y en a deux. façons d'obtenir l'adresse IP. J'ai commenté les plus complexes. Si vous souhaitez utiliser les plus complexes, supprimez simplement les commentaires, puis commentez les plus simples.
Le code est le suivant :
<?php // 复杂获取本地ip地址 /* if (getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) { $SA_IP = getenv('HTTP_CLIENT_IP'); } elseif (getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) { $SA_IP = getenv('HTTP_X_FORWARDED_FOR'); } elseif (getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) { $SA_IP = getenv('REMOTE_ADDR'); } elseif (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) { $SA_IP = $_SERVER['REMOTE_ADDR']; } */ $SA_IP=$_SERVER['REMOTE_ADDR'];//简单获取本地ip地址 //定义一个函数根据ip获取城市名,使用新浪的天气预报 function getIPLoc_sina($queryIP){ $url = 'http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=' . $queryIP; $ch = curl_init($url); curl_setopt($ch, CURLOPT_ENCODING, 'utf8'); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $location = curl_exec($ch); $location = json_decode($location); curl_close($ch); $loc = ""; if ($location === FALSE) return ""; if (empty($location->desc)) { $loc = $location->city; $full_loc = $location->province . $location->city . $location->district . $location->isp; } else { $loc = $location->desc; } return $loc; } $city = getIPLoc_sina("$SA_IP");</p> <p>$citycode = mb_convert_encoding($city, "gb2312", "utf-8");</p> <p>$doc = new DOMDocument(); if (<a href="mailto:!@$doc->load("http://php.weather.sina.com.cn/xml.php?city">!@$doc->load("http://php.weather.sina.com.cn/xml.php?city</a>=" . $citycode . "&password=DJOYnieT8234jlsK&day=0")) { echo "Get data failed!!\n"; return; }</p> <p>$city = $doc->getElementsByTagName("city")->item(0)->nodeValue; $stat1 = $doc->getElementsByTagName("status1")->item(0)->nodeValue; $chy_shuoming = $doc->getElementsByTagName("chy_shuoming")->item(0)->nodeValue; $tmp1 = $doc->getElementsByTagName("temperature1")->item(0)->nodeValue; $tmp2 = $doc->getElementsByTagName("temperature2")->item(0)->nodeValue; $date = $doc->getElementsByTagName("savedate_weather")->item(0)->nodeValue; $pollution_l = $doc->getElementsByTagName("pollution_l")->item(0)->nodeValue; $gm_s = $doc->getElementsByTagName("gm_s")->item(0)->nodeValue;</p> <p>echo '<aside><div><div>' .$city .' / '.$date.'</div><div><span>'. $tmp1 .'~'. $tmp2 .'<sup>℃</sup></span><span>'.$stat1 .'</span> <span><p>空气质量:'.$pollution_l .'</p><p>穿衣建议:'. $chy_shuoming .'</p></span></div></div></div></aside>'; ?>
Style CSS
.sina-weather-content{border:1px solid #D14836;font-size:12px;line-height:14px;position:relative} .sina-weather-city{background:#D14836;color:#FFFFFF;font-size:14px;font-weight:600;left:-1px;padding:5px 15px;position:absolute;top:5px;z-index:2;display:inline} .sina-weather-body{overflow:hidden;padding:45px 15px 15px} .sina-weather-body p{margin-bottom:10px} .sina-weather-tem{color:#000000;font-size:36px;font-weight:700;line-height:36px;padding-top:10px} .sina-weather-text{color:#666666;display:block;margin-top:10px} .stat-w{color:#555555;font-family:Microsoft Yahei;font-size:18px;font-style:italic;font-weight:600;line-height:10px} .entry-meta{position:relative;font-size:12px;font-size:12px;margin-top:-15px;padding:10px 0;text-transform:uppercase} .entry-meta a{color:#666}
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!