SEO Сообщество: Спрашивайте и помогайте

Присоединяйтесь к сообществу профессиональных веб-мастеров PR-CY, отвечайте на вопросы коллег и задавайте свои.

Q&A SEO

Как вывести первые картинку в миниатюру на wordpress?

Steam2009 Steam2009  
31
  16.02.2016 18:52       1 420    
Как сделать, чтобы первые картинку добавились в миниатюру на WORDPRESS?

Ответы на пост (6) Написать ответ
garik1331 garik1331
1434
16.02.2016 19:13
Вот этими плагинами пользуюсь Generate Post Thumbnails Regenerate Thumbnails Viva Thumb-Zoom
0
Steam2009 Steam2009
31
16.02.2016 20:25
а сколько их здесь?
0
garik1331 garik1331
1434
16.02.2016 20:29
Generate Post Thumbnails
Regenerate Thumbnails


эти увеличивают фото

Viva Thumb-Zoom
Thumbnails Viva Thumb-Zoom
0
garik1331 garik1331
1434
16.02.2016 20:31
что то сам запутался
врубайте все а там разберетесь
0
roger3 roger3
30
17.02.2016 02:10
Нужно код вставить в то место в шаблоне, где будет миниатюра.
0
macasin2003 macasin2003
0
06.07.2018 10:58
Вот просто ложите в корень и запускаете по адресу site/img.php

<?php

ini_set("display_errors",1);
error_reporting(E_ALL);
set_time_limit(0);
$start = microtime(true);

require_once( 'wp-load.php' );
/*global $wpdb;
$wpdb->query( "
DELETE FROM $wpdb->postmeta
WHERE meta_key = '_thumbnail_id'
" );*/
?>

<?php
// запрос
$wpb_all_query = new WP_Query(array('post_type'=>'post', 'post_status'=>'publish', 'posts_per_page'=>-1)); ?>

<?php if ( $wpb_all_query->have_posts() ) : ?>

<!-- the loop -->
<?php while ( $wpb_all_query->have_posts() ) : $wpb_all_query->the_post(); ?>
<?php

if ( !has_post_thumbnail()){
$img = get_post_first_image_src(get_the_ID());
$img_id = get_attachment_id_by_url($img);
set_post_thumbnail(get_the_ID(), $img_id);
}else{
echo "<p>есть миниатюра</p>";
}



?>
<?php endwhile; ?>
<!-- end of the loop -->



<?php wp_reset_postdata(); ?>

<?php else : ?>
<p><?php _e( 'Извините, нет записей, соответствуюших Вашему запросу.' ); ?></p>
<?php endif; ?>}

<?php

$time = microtime(true) - $start;
printf('Скрипт выполнялся %.4F сек.', $time);

function get_post_first_image_src( $post = 0, $default_src = '' ){
if( ! $post || ! is_object($post) )
$post = get_post($post);

// если у записи есть миниатюра
if( $thumbnail_id = get_post_meta( $post->ID, '_thumbnail_id', true ) )
if( $src = wp_get_attachment_url( $thumbnail_id ) )
return $src;

// миниатюры нет, ищем в контенте
preg_match('/<img[^>]+src=[\'"]([^\'"]+)[\'"][^>]*>/i', $post->post_content, $match );

if( ! $match )
return $default_src;

return $match[1];
}

function get_attachment_id_by_url( $url ) {
global $wpdb;

// таблица постов, там же перечисленны и медиафайлы
$table = $wpdb->prefix . 'posts';
$attachment_id = $wpdb->get_var(
$wpdb->prepare( "SELECT ID FROM $table WHERE guid RLIKE %s", $url )
);
// Returns id
return $attachment_id;
}
?>
0