Здравствуйте, уважаемые спецы по Вордпрессу.
Подскажите пожалуйста, как реализовать такую задачу -
нужно, чтобы первая картинка, вставленная в пост, автоматически становилась ссылкой на этот пост.
В общем, чтобы при клике на картинку на главной странице с лентой статей попадали на страницу с этим постом. Чтобы это было не в ручном режиме, а автоматически.
Сейчас по-умолчанию при клике на картинку открывается картинка в полный размер на отдельной странице.
Надеюсь понятно объяснил.
- 13.06.2014 02:39
- 13.06.2014 09:13PHP код:
<a href="<?php the_permalink(); ?>"><img src="<?php echo $article_image ?>" alt="<?php the_title(); ?>"/></a>
Спасибо сказали:
suschinsky(13.06.2014), - 13.06.2014 12:39PHP код:вдогонку к сабжу, плагин Auto Post Thumbnail – создаем миниатюры автоматически: _wordpressinside.ru/plugins/autopost-thumbnail/
<?php if ( has_post_thumbnail()) { ?>
<a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>" >
<?php the_post_thumbnail(); ?>
</a>
<?php } ?>Последний раз редактировалось wmas; 13.06.2014 в 12:45.
Спасибо сказали:
suschinsky(13.06.2014), - 13.06.2014 12:44
Таки да, если всё стандартно, то решение от wmas верным будет.
- 13.06.2014 19:34
wmas,
То бишь нужно обязательно чтобы были миниатюры к каждому посту?
А если has_post_thumbnail эта функция не используется... тупо вставлены в пост картинки? - 13.06.2014 20:07
suschinsky, использование миниатюр имхо оптимальный вариант, но можно и первую картинку из статьи спарсить. Вот по инету такой вариант гуляет:
PHP код:Очевидно, что функцию надо добавить в файл function.php и вызвать где-то после:function catch_that_image() {
global $post;
$first_img = "/images/default.jpg";
if ( preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches) ) $first_img = $matches[1][0];
return $first_img;
}
PHP код:Вызывать как-то так:<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
PHP код:Пы.Сы. вариант не пробовал, просто привёл то, что попалось первым<a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><img src="<?php echo catch_that_image() ?>" alt="<?php the_title(); ?>"/></a>
- 14.06.2014 02:39
wmas,
Спасибо за помощь.
Попробовал вначале первый ваш ваш вариант, заработал только после того как создал тумбы плагином Auto Post Thumbnail.
Но тумбы создались огромными (по реальному размеру закаченной на хостинг фотке) и тупо дублируют первую картинку в посте.
Вопрос, являются ли тумбами закачанные через Медиа менеджер фотки, которые автоматом ресайзятся до нужного размера? Вот код такой фотки -
Код:По идее она уже является тумбой?! Если да, тогда почему функция has_post_thumbnail не отрабатывала, до тех пор пока не создал тумбы плагином?!<img class="aligncenter size-thumbnail wp-image-36321" src="http://url-420x315.jpg" alt="" width="420" height="315">
ЗЫ: Второй вариант с функцией catch_that_image к сожалению вообще не работает, обрезает все что ниже кода вызова функции.Последний раз редактировалось suschinsky; 14.06.2014 в 02:44.
Похожие темы
Темы | Раздел | Ответов | Последний пост |
---|---|---|---|
Ссылка за 10 рублей с сайта тИЦ 170 PR 4, всего 10 рублей и ваша ссылка на легендарном 7-ми летнем сайте | Ссылки, статьи | 47 | 03.04.2013 16:32 |
Что лучше сквозная ссылка или ссылка с главной? | Вопросы от новичков | 5 | 30.01.2012 17:39 |
Опрос. Что лучше сквозная ссылка или ссылка с главной? | Общие вопросы поисковой оптимизации | 1 | 26.01.2012 03:15 |
Пост о посте | Дайджест блогосферы | 0 | 01.05.2010 01:12 |
Короткий пост, длинный пост. Какой должна быть длина поста. | Дайджест блогосферы | 0 | 23.02.2010 02:56 |