WordPress サイトに最近の宝くじ当選番号を表示したい場合は、Rodo APIを使用して当選番号をクロールできます。この記事では、今回のロト当選番号と過去3回の宝くじ当選番号を表示する方法について説明します。
WordPressでロトAPIを使用して当選番号を表示する方法
ロトAPIを使用してロト当選番号をクロールする方法が次の記事に紹介されています。
Pythonで書かれたサンプルコードを参照できます。
上記の記事に示されているPythonコードを適用して WordPressに今回のロト当選番号を表示できます。
最新回折の宝くじ当選番号
先週の当選番号をクロールして表示したい場合は、以下のコードをテーマ関数ファイルに追加してください。なるべく チャイルドテーマ(子テーマ)を作成して子テーマ内の関数ファイル(functions.php)に追加しなければ、テーマが更新されても変更や変更は消えません。
// 최신 회차 당첨번호를 가져오는 함수
function get_max_draw_number() {
$url = "https://dhlottery.co.kr/common.do?method=main";
$html = file_get_contents($url);
if ($html === false) {
return null;
}
// 정규식을 사용하여 회차 번호를 추출합니다.
if (preg_match('/id="lottoDrwNo">(\d+)<\/strong>/', $html, $matches)) {
return intval($matches[1]);
} else {
return null;
}
}
// 주어진 회차 번호로부터 로또번호를 가져오는 함수
function get_lotto_numbers($drawNumber) {
$url = "https://www.dhlottery.co.kr/common.do?method=getLottoNumber&drwNo={$drawNumber}";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
if ($data['returnValue'] == 'success') {
return array(
'drawNo' => $data['drwNo'],
'date' => date("Y년 m월 d일", strtotime($data['drwNoDate'])),
'lottoNumb' => array(
$data['drwtNo1'],
$data['drwtNo2'],
$data['drwtNo3'],
$data['drwtNo4'],
$data['drwtNo5'],
$data['drwtNo6']
),
'bonusNumb' => $data['bnusNo']
);
} else {
return null;
}
}
// 숏코드 핸들러 함수
function display_latest_lotto_numbers() {
$output = '<div class="latest-lotto"><h2>최근 로또 당첨번호</h2>';
// 최신 회차 번호를 가져오기
$latestDrawNumber = get_max_draw_number();
if ($latestDrawNumber === null) {
$output .= "<p>Failed to retrieve the latest draw number.</p>";
} else {
// 최신 회차 로또번호 가져오기
$lottoNumbers = get_lotto_numbers($latestDrawNumber);
if ($lottoNumbers) {
$output .= "<h3>" . $lottoNumbers['drawNo'] . "회(" . $lottoNumbers['date'] . ")</h3>";
$output .= "<p>";
foreach ($lottoNumbers['lottoNumb'] as $number) {
$output .= "<span class='lotto-number'>" . $number . "</span> ";
}
$output .= "(보너스: <span class='lotto-number bonus'>" . $lottoNumbers['bonusNumb'] . "</span>)</p>";
} else {
$output .= "<p>Failed to retrieve lotto numbers for draw " . $latestDrawNumber . ".</p>";
}
}
$output .= '</div>';
return $output;
}
// 숏코드 등록
add_shortcode('latest_lotto_numbers', 'display_latest_lotto_numbers');
FTP / SFTPに接続してテーマファイル(例:/wp-content/themes/チャイルド-テーマ-名前/functions.php)に追加してください。 テーマファイルエディタは、できるだけ無効にすることが望ましい。
過去3回の当選番号を表示する
過去3回目の宝くじ当選番号をリストしたい場合は、次のコードでテストできます。
// functions.php 파일에 추가
// 최신 회차 번호를 가져오는 함수
function get_max_draw_number() {
$url = "https://dhlottery.co.kr/common.do?method=main";
$html = file_get_contents($url);
if ($html === false) {
return null;
}
// 정규식을 사용하여 회차 번호를 추출합니다.
if (preg_match('/id="lottoDrwNo">(\d+)<\/strong>/', $html, $matches)) {
return intval($matches[1]);
} else {
return null;
}
}
// 주어진 회차 번호로부터 로또번호를 가져오는 함수
function get_lotto_numbers($drawNumber) {
$url = "https://www.dhlottery.co.kr/common.do?method=getLottoNumber&drwNo={$drawNumber}";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
if ($data['returnValue'] == 'success') {
return array(
'drawNo' => $data['drwNo'],
'date' => date("Y년 m월 d일", strtotime($data['drwNoDate'])),
'lottoNumb' => array(
$data['drwtNo1'],
$data['drwtNo2'],
$data['drwtNo3'],
$data['drwtNo4'],
$data['drwtNo5'],
$data['drwtNo6']
),
'bonusNumb' => $data['bnusNo']
);
} else {
return null;
}
}
// 숏코드 핸들러 함수
function display_latest_lotto_numbers() {
$output = '<div class="latest-lotto"><h2>최근 3회의 로또 당첨번호</h2>';
// 최신 회차 번호를 가져오기
$latestDrawNumber = get_max_draw_number();
if ($latestDrawNumber === null) {
$output .= "<p>Failed to retrieve the latest draw number.</p>";
} else {
// 최신 3회 로또번호 가져오기
for ($i = 0; $i < 3; $i++) {
$drawNumber = $latestDrawNumber - $i;
$lottoNumbers = get_lotto_numbers($drawNumber);
if ($lottoNumbers) {
$output .= "<h3>" . $lottoNumbers['drawNo'] . "회(" . $lottoNumbers['date'] . ")</h3>";
$output .= "<p>";
foreach ($lottoNumbers['lottoNumb'] as $number) {
$output .= "<span class='lotto-number'>" . $number . "</span> ";
}
$output .= "(보너스: <span class='lotto-number bonus'>" . $lottoNumbers['bonusNumb'] . "</span>)</p>";
} else {
$output .= "<p>Failed to retrieve lotto numbers for draw " . $drawNumber . ".</p>";
}
}
}
$output .= '</div>';
return $output;
}
// 숏코드 등록
add_shortcode('latest_lotto_numbers', 'display_latest_lotto_numbers');
このコードを適用して、差別当選番号を表示することも可能です。
ショートコードで番号を表示する
ロト番号を表示したい場所に、次の形式でショートコードを入力します。
[latest_lotto_numbers]
上記のコードでテストしてみると、すべてうまく動作しました。状況に応じてコードを適切に修正してください。
スタイルはCSSを使用して調整してください。たとえば、カラーサークル内に番号を表示したい場合 デザイン » カスタマイズ » 追加のCSSに次のカスタムCSSコードを入力してテストします。
.lotto-number {
display: inline-block;
width: 40px;
height: 40px;
line-height: 40px;
margin: 5px;
border-radius: 50%;
background-color: #f1c40f;
color: #fff;
text-align: center;
font-weight: bold;
font-size: 18px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
transition: background-color 0.3s, box-shadow 0.3s;
}
.lotto-number.bonus {
background-color: #e74c3c;
}
.lotto-number:hover {
background-color: #e2b707;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
}
上記のコードを使用して、ロト番号ジェネレータページに最近3回当選番号を表示してみました。
道路番号抽出器の下には、次のようなレイアウトで当選番号が表示されます。
コメントを残す