wordpress — Справка по функциям PHP: создание простой функции для повторяющихся задач

Я новичок в использовании PHP полностью, так что я думаю, что это просто отсутствие понимания правильного синтаксиса.

У меня есть домашняя страница, которая создается с помощью WordPress и Advanced Custom Fields. Изображения снова и снова для разных данных одно и то же, поэтому подходящее время для создания правильной функции?

Это моя функция:

<?php
function homeMobImgLayout($flexibleLayout) {
$pageID = '333';

// check if the flexible content field has rows of data
if( have_rows('$flexibleLayout', $pageID ) ):

// loop through the rows of data
while ( have_rows('$flexibleLayout', $pageID ) ) : the_row();// 100% Image
if( get_row_layout() == 'image_100' ):

$img = get_sub_field('img');
$alt = get_sub_field('alt');

echo '<div class="imagePod width100 clearfix">';
echo '<img src="' . $img . '" alt="' . $alt . '" />';
echo '</div>';// 50% Image
elseif( get_row_layout() == 'image_50' ):

$img = get_sub_field('img');
$alt = get_sub_field('alt');

echo '<div class="imagePod width50 clearfix">';
echo '<img src="' . $img . '" alt="' . $alt . '" />';
echo '</div>';

endif;

endwhile;

else :
// no layouts found
endif;
}
?>

Единственное, что нужно изменить с каждым экземпляром вызова функции — это два места, где у меня есть переменная $ FlexibleLayout

(if( have_rows('$flexibleLayout', $pageID ) ):

while ( have_rows('$flexibleLayout', $pageID ) ) : the_row();

Итак, с каждым экземпляром я вызываю функцию, хотя я просто передаю то, что хотел, чтобы это значение было.

Примеры:

<?php
homeMobImgLayout("pet_boarding_imgs");
?>

а также

<?php
homeMobImgLayout("dog_boarding_imgs");
?>

Где мое понимание и / или синтаксис неверен?

0

Решение

'$flexibleLayout' буквально строка «$ FlexibleLayout».
Если вы хотите использовать переменную, используйте переменную (без кавычек):

if (have_rows($flexibleLayout, $pageID)) :
2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector