نمایش زمینه های دلخواه پیشرفته در قالب - افزونه ACF

نمایش زمینه های دلخواه پیشرفته در قالب – افزونه ACF

در این مقاله با نمونه کدها و مثال های کاربردی برای نمایش زمینه های دلخواه پیشرفته در قالب سایت خود آشنا خواهید شد. در پست های قبلی ما افزونه زمینه های سفارشی رو به طور کامل معرفی کرده ایم و پیشنهاد می کنیم قبل از خواندن این مقاله حتما مقاله معرفی افزونه ACF را مطالعه کنید.

اگر بخواهیم به صورت خلاصه یک توضیح راجب افزونه Advanced Custom Field بدهیم، از طریق این افزونه بدون نیاز به کدنویسی قادر به ایجاد بی نهایت متاباکس مختلف و افزودن ویژگی های جدید به وردپرس خواهیم بود. به کمک افزونه ACF متاباکس ها از ظاهر به مراتب بهتری برخودارند و سرعت سفارشی سازی متاباکس و مقادیر وارد شده چندین برابر می شود.

افزونه Advanced Custom Fields یا زمینه های دلخواه پیشرفته در نسخه های تجاری و رایگان منتشر شده که نسخه تجاری نسبت به نسخه رایگان از قابلیت های بیشتری برخوردار بوده، اما خوشبختانه نسخه رایگان افزونه ACF نیز تمام نیاز ما را براورده می کند. در این مقاله سعی ما در ارائه یک آموزش در خصوص نمایش زمینه های دلخواه پیشرفته در قالب بوده است.

نمایش زمینه های دلخواه پیشرفته در قالب

<p><?php the_field('field_name'); ?></p>

ذخیره مقدار زمینه در متغیر

<?php $variable = get_field('field_name'); ?>

نمایش زمینه با دستورات شرطی

نکته : if (value == "" || value == null || value == false) مقدار false را برگشت می دهد.

<?php
if(get_field('field_name'))
	{
		echo '<p>' . get_field('field_name') . '</p>';
	}
?>

نمایش آرایه یا ایجاد حلقه

برای مثال نمایش مقادیر زمینه های checkbox – select – relationship – repeater

<?php
$values = get_field('field_name');
if($values){
	echo '<ul>';
	foreach($values as $value){
		echo '<li>' . $value . '</li>';
	}
	echo '</ul>';
}
?>

نمایش تصاویر زمینه

از طریق لینک – URL

<img src="<?php the_field('image_test'); ?>" alt="" />

از طریق ایدی – ID

نکته : از این طریق ما شما می توانید به اندازه های مختلف برش داده شده و حتی نام تصویر نیز دسترسی داشته باشید.

<?php 
	$image = wp_get_attachment_image_src(get_field('image_test'), 'full');
	echo '<img src="'.$image[0].'" alt="'.get_the_title(get_field('image_test')).'" />';
?>

زمینه تکرار شونده – Repeater Field

دسترسی از طریق get_field یا the_sub_field یا the_repeater_field امکان پذیر است

<?php if( have_rows('repeater_field_name') ): ?>
    <ul>
    <?php while( have_rows('repeater_field_name') ): the_row(); ?>
        <li>
			sub_field_1 = <?php the_sub_field('sub_field_1'); ?>, 
			sub_field_2 = <?php the_sub_field('sub_field_2'); ?>,
		</li>
        <?php $sub_field_3 = get_sub_field('sub_field_3'); ?>
    <?php endwhile; ?>
    </ul>
<?php endif; ?>

یا یکی از سطر های زمینه تکرار شونده به صورت تصادفی

<?php
	$rows = get_field('repeater_field_name');
	$row_count = count($rows);
	$i = rand(0, $row_count - 1);
		echo $rows[ $i ]['sub_field_name'];
?>

نمایش زمینه یک پست یا برگه دیگر

<?php $other_page = 12; ?>
	<p><?php the_field('field_name', $other_page); ?></p>
<?php
$variable = get_field('field_name', $other_page);
	if( have_rows('repeater_field_name', $other_page) ): ?>
		<ul>
			<?php while( have_rows('repeater_field_name', $other_page) ): the_row(); ?>
				<li>
					sub_field_1 = <?php the_sub_field('sub_field_1'); ?>, 
					sub_field_2 = <?php the_sub_field('sub_field_2'); ?>
				</li>
				<?php $sub_field_3 = get_sub_field('sub_field_3'); ?>
			<?php endwhile; ?>
		</ul>
	<?php endif; ?>

نمایش پست ها « حلقه » بر اساس مقادیر زمینه های ACF

<?php
$posts = get_posts(array(
	'numberposts' => -1,
	'post_type' => 'event',
	'meta_key' => 'location',
	'meta_value' => 'melbourne'
));
if($posts)
{
	echo '<ul>';
	foreach($posts as $post)
	{
		echo '<li><a href="' . get_permalink($post->ID) . '">' . get_the_title($post->ID) . '</a></li>';
	}
	echo '</ul>';
}
?>
نمایش زمینه های دلخواه پیشرفته در قالب - افزونه ACF
نمایش زمینه های دلخواه پیشرفته در قالب – افزونه ACF

همچنین ما در پست های زیر نحوه نمایش زمینه های دلخواه پیشرفته در قالب و نحوه استفاده از هر زمینه به طور اختصاصی توضیح داده ایم. در صورت نیاز میتوانید بر روی هر کدام از موارد کلیک کنید و برای دسترسی یکجا به همه زمینه ها روی این لینک کلیک کنید.

Field Accordion
name
name
name
name
Field Button Group
Field Button Group
name
name
name
name
Name
name
name
name
name
name
name