Изображение в каждом посте в WordPress - PullRequest
0 голосов
/ 05 апреля 2010

Если вы посетите этот сайт , вы увидите, что для каждого сообщения есть изображение и резюме. Как правильно это реализовать?

Это делается с помощью пользовательских полей WordPress? Или это закодировано в image.php файле, присутствующем в папке темы? Как мне это сделать?

Ответы [ 3 ]

2 голосов
/ 05 апреля 2010

Есть лучший способ - вы также можете использовать эту функцию -

function catch_that_image() {
    global $post, $posts;
        $first_img = '';
        ob_start();
        ob_end_clean();
        $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
        $first_img = preg_replace("/_thumb[0-9]\./", "$1.", $first_img);

    // no image found display default image instead
        if(empty($first_img)){
            $first_img = "/wp-content/default.png";
        }
        return $first_img;
}

если вы вставите эту функцию в файл functions.php вашей темы, вы можете вставить

<img src="<?php echo catch_that_image(); >" width="50" height="50" alt="<?php the_title(); ?>" />

в вашем файле single.php и index.php

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

Или другим способом:

<?php $image = get_post_meta($post->ID, 'postimage', true); ?>

<img src="<?php echo $image; ?>" alt="<?php the_title(); ?>" />

Если вы поместите это в ваш index.php или single.php, он будет использовать изображение, указанное в поле «postimage» (настраиваемое поле в posts / pages).

Надеюсь, это поможет

2 голосов
/ 05 апреля 2010

Скорее всего по настраиваемому полю, которое берет источник изображения Затем шаблон сообщения будет изменен, чтобы увидеть, установлено ли изображение, и, если оно есть, включить его.

1 голос
/ 15 марта 2012

Добавление дополнительного ответа для людей, которые находят это через Google, так как оригинальные ответы подразумевают, что требуется много ручного кодирования.

Блог catswhocode больше не выглядит как описано, поэтому этот совет может не совсем соответствовать, но я подумал, что стоит упомянуть, что WordPress теперь явно поддерживает «Миниатюры сообщений».Для получения дополнительной информации см. Здесь: http://codex.wordpress.org/Post_Thumbnails

Что касается статьи, представляющей собой только сводку на первой странице, одним из способов достижения этого является замена вызова на the_content(~~~) (например, в content.php)с одним до the_excerpt().Подробнее о выдержках см. http://codex.wordpress.org/Excerpt

...