1

我希望有人可以提供帮助,因为这正在杀死我。我正在使用其他人的代码并且遇到了很多麻烦,而且我只是 wordpress 的新手。

我想要实现的是帖子在页面顶部显示来自画廊的第一张图片,然后是它下方的第二张图片(在一些文本内容旁边),然后我希望它显示所有剩余的图片在画廊。出于某种原因,它目前将画廊中的最后两张图片排除在外,就好像它们被有意排除在外一样。非常感谢您的帮助,我很感激。

这是当前代码:

<?php

get_header();

if (have_posts()) {
while (have_posts()) {
    the_post();
    $images = GetPostImages(); // Get Post Images
    $tags = GetPostTags(); // Get Post Tags String
    ?>                    
<div class="project">

<img src="<?php echo $images[1]->guid; ?>" class="large" width="1000" height="700" />

<div class="projectdesc">  
    <h1><?php the_title(); ?></h1>
        <p class="tags"><?php echo $tags; ?></p>

    <?php 
the_content(); ?>

</div>

<img src="<?php echo $images[2]->guid; ?>" class="right" width="600" height="400" />

 <?php
        // Additional Project Images
        for ($i = 3; $i < count($images); $i++) {
            ?>
            <img src="<?php echo $images[$i]->guid; ?>" class="large" width="1000"/>        
            <?php
        }
        ?> 

    </div>

    <?php
}
}

get_footer();
?>`

functions.php 文件中的代码也在下面。我认为这控制了帖子页面处理图像的方式?

function GetPostImages() {
global $post;

// Get image attachments
$images = get_children('post_type=attachment&post_mime_type=image&post_parent='.$post->ID);

// Sort by menu_order
foreach ($images as $key=>$image) {
    $newImages[$image->menu_order] = $image;
}

// Return
return $newImages;

}

4

1 回答 1

2

use wp_get_attachment_image_src() to get the image source

$attr = wp_get_attachment_image_src(int $id,string $size); //where $id is image post id

$width  =  $attr[1];
$height =  $attr[2];
$src    =  $attr[0]; //the source

echo sprintf('<img src="%s" alt="" height="%s" width="%s"/>',$src,$height,$width);

witin the functions.php file or an include file within the functions.php include...

function setup_images(){

//Register Image dimensions
add_image_size( 'large',1000,700,true); //'large' will be the string used in $size
add_image_size( 'med',600,400,true);  //or 'med'
}
add_action('after_setup_theme','setup_images'); //hook that function up in the right place
于 2012-08-01T14:37:44.797 回答