0
ACF에서 URL의 일부와 일치하는 위치를 표시하기 위해이 코드를 만들었고 예상 한대로 작동합니다.PHP에서 함수를 사용하여 사용자 정의 게시 유형에서 ACF를 반복하여 페이지에 값을 표시합니다. foreach는 함수에 넣을 때 작동하지 않습니다.
<?php
$myurl= htmlspecialchars($_SERVER["REQUEST_URI"]);
$myexplodes = (explode ('/', $myurl));
$posts = get_posts(array(
'post_type' => 'my_vars',
));
if($posts){
foreach($posts as $post){
$value = get_field("location");
//echo get_field("location");
if($value == $myexplodes[1]) {
echo '<h1>' . $value . ' :this is location</h1>';
}
else {
}
}
}
?>
하지만이 코드를 함수에 넣으려고하면 전화 할 때 아무 것도 표시되지 않습니다.
function local(){
if($posts){
foreach($posts as $post){
$value = get_field("location");
//echo get_field("location");
if($value == $myexplodes[1]) {
echo '<h1>' . $value . ' :this is location</h1>';
}
else {
}
}
}
}
나는 그것이 바르의 범위 문제라고 의심했지만 나는 전역을 만들려고했지만 행운이 없었다.
나는 이것으로 찾고있다 : 당신이 get_field 함수 호출도 포스트 ID를 사용해야하고 싶은 일을 위해
. get_field 부분을 이해하지만 $ post중인 전역 변수에 대해 자세히 설명 할 수 있습니까? – caseyWordpress는 $ post라는 전역 변수를 사용하며 이것은 foreach에서 방해가 될 수 있습니다. foreach ($ posts는 $ post) 대신 foreach ($ articles as $ article)를 사용하십시오. – sticksu