زمینه دلخواه ارتباط ACF Relationship

زمینه دلخواه ارتباط ACF Relationship

بدون شک زمینه دلخواه ارتباط ACF Relationship یکی از بهترین زمینه های افزونه ACF است. به کمک این زمینه شما قادر به نمایش یک یا چند پست در هر مطلب هستید، برای مثال می توانید مقالات مرتبط به مطلب را بدون کدنویسی خاصی نمایش دهید و این نمایش کاملا سفارشی و با انتخاب شما باشد.

زمینه دلخواه ارتباط Relationship برای انتخاب یک یا چند پس در هر مطلب به کار می رود، مطالب می تواند بر اساس دسته، برچسب یا نوع پست تایپ باشند. انتخاب پست ها در یک محیط کاربرپسند و بر اساس جستجوی نام مطلب صورت می گیرد.

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

تنظیمات زمینه دلخواه ارتباط ( Relationship )

فیلتر با نوع نوشته ( Post Type )

نتایج قابل انتخاب در زمینه دلخواه ارتباط می تواند بر اساس یک یا چند یا همه پست تایپ ها باشد. در این قسمت شما می توانید انتخاب کنید که نتایج بر اساس کدام پست تایپ باشد. برای اینکه نتایج قابل انتخاب بر اساس تمامی پست تایپ ها باشند این قسمت را خالی بگذارید.

فیلتر با طبقه بندی ( Taxonomy )

این قسمت کاملا مشابه با تنظیمات بخش فیلتر با نوع نوشته بوده تنها تفاوت آن این است که در این بخش نوع طبقه بندی انتخاب می شود برای مثال دسته یا تگ یا هردو یا حتی تمامی طبقه بندی ها ( Taxonomy ).

فیلترها ( Filters )

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

عناصر ( Elements )

با انتخاب این گزینه پس از انتخاب مطلب در نتایج جستجو عکس مطالب جستجو شده نیز نمایش داده می شود.

حداقل تعداد نوشته ( Minimum Posts )

ایجاد محدودیت برای کمترین تعداد انتخاب مطلب.

حداکثر تعداد نوشته ( Maximum Posts )

ایجاد محدودیت برای بیشترین تعداد انتخاب مطلب.

فرمت بازگشت ( Return Format )

مشخص کنید که فرمت بازگشت مطالب انتخاب شده بر اساس آبجکت نوشته و یا ایدی ( شناسه ) مطلب باشد. توجه داشته باشید که برای نمایش زمینه در قالب از فرمت بازگشت استفاده می شود.

تنظیمات زمینه دلخواه ارتباط ACF Relationship
تنظیمات زمینه دلخواه ارتباط ACF Relationship
زمینه دلخواه ارتباط ACF Relationship
زمینه دلخواه ارتباط ACF Relationship

نمایش زمینه دلخواه ارتباط Relationship در قالب

نمایش مطالب انتخاب شده با setup_postdata()

این مثال نشان می دهد که چگونه می توان مقدار Post Object را به صورت حلقه و لیستی از پیوندهای قابل کلیک را نمایش داد. در اینجا ما از یک عملکرد ویژه به نام setup_postdata () برای استفاده از توابع قالب وردپرس استفاده می کنیم. در مثال زیر از فرمت بازگشت آبجکت نوشته استفاده شده است.

<?php
$featured_posts = get_field('featured_posts');
if( $featured_posts ): ?>
    <ul>
    <?php foreach( $featured_posts as $post ): 

        // Setup this post for WP functions (variable must be named $post).
        setup_postdata($post); ?>
        <li>
            <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
            <span>A custom field from this post: <?php the_field( 'field_name' ); ?></span>
        </li>
    <?php endforeach; ?>
    </ul>
    <?php 
    // Reset the global post object so that the rest of the page works correctly.
    wp_reset_postdata(); ?>
<?php endif; ?>

نمایش مطالب انتخاب شده بدون setup_postdata()

این مثال نشان می دهد که چگونه می توان مقدار Post Object را به صورت حلقه و لیستی از پیوندهای قابل کلیک را نمایش داد. در اینجا متغیر Global Post تغییر نمی کند ، بنابراین همه توابع مربوط به post برای مشخص کردن آبجکت به پارامتر دوم نیاز دارند. در مثال زیر از فرمت بازگشت آبجکت نوشته استفاده شده است.

<?php
$featured_posts = get_field('featured_posts');
if( $featured_posts ): ?>
    <ul>
    <?php foreach( $featured_posts as $featured_post ): 
        $permalink = get_permalink( $featured_post->ID );
        $title = get_the_title( $featured_post->ID );
        $custom_field = get_field( 'field_name', $featured_post->ID );
        ?>
        <li>
            <a href="<?php echo esc_url( $permalink ); ?>"><?php echo esc_html( $title ); ?></a>
            <span>A custom field from this post: <?php echo esc_html( $custom_field ); ?></span>
        </li>
    <?php endforeach; ?>
    </ul>
<?php endif; ?>

زمینه های افزونه Advanced Custom Fields