it-swarm.asia

هل يتم تخزين التعليقات التوضيحية في أي مكان؟

فيما يتعلق بسؤالي السابق حول التسميات التوضيحية للرمز القصير ، لا يبدو لي أن النص الفعلي للتعليق التوضيحي يتم تخزينه في أي مكان آخر غير المنشور المحتوى داخل الرمز القصير نفسه.

كنت أعتقد أن wp_get_attachment_metadata سيخزن المعلومات لمرفق ، لكنه لا يفعل ذلك.

هل أنا مخطئ؟ أو هل لا يقوم WordPress بتخزين التسمية التوضيحية الفعلية في أي مكان؟

5
Dan Gayle

نعم ، يقوم بتخزين التسمية التوضيحية في مكانها الخاص في قاعدة البيانات. لا أستطيع أن أقتبس الموقع بالضبط ولكن في وورد ، "المرفقات" هي نوع من النشرات ويخزن كل مرفق تمامًا مثل النشر. بالنسبة لنوع منشور المرفق ، فإنه يعامل تعليق الصورة كـ the_excerpt وصف الصورة كـ the_content وعنوان الصورة كـ ... the_title.

3
matt

حيث $post_id هي المشاركة الحالية ، ستخرج هذه الشفرة جميع مرفقات المنشور وأوصاف عناوينها والتعليقات التوضيحية لها

$q = new WP_Query( array(
    'post_parent' => $post_id,
    'post_type' => 'attachment'
));
if($q->have_posts()){
    while($q->have_posts()){
        $q->the_post();
        ?>
        <h3><?php the_title(); ?></h3>
        <?php

        if ( wp_attachment_is_image( $post->id ) ) {
            $att_image = wp_get_attachment_image_src( $post->id, "large");
            ?>
<img src="<?php echo $att_image[0];?>" width="<?php echo $att_image[1];?>" height="<?php echo $att_image[2];?>"  class="attachment-large" alt="<?php $post->post_excerpt; ?>" />
            <?php
        }

        // caption
        the_excerpt();

        // description
        the_content();
    }
}
wp_reset_query();

المرفقات هي جميعها أطفال من المنشور الذي يتم إرفاقهم به ، ويمكنك استخدام هذا للقيام برمز المعرض المخصص الخاص بك. لديهم أيضًا الكثير من البيانات في حقولهم المخصصة ، مثل أبعاد الصورة ، وبيانات EXIF ​​، وما إلى ذلك حتى يمكن التعليق عليها.

يمكنك أخذ الكود من الحلقة الداخلية ووضعه في ملف مرفق. php في نسختك ، ما عليك سوى التحقق مرتين من عدم إجراء أي أخطاء في بناء الجملة قبل القيام بذلك.

0
Tom J Nowell