Поддержка Проблемы и решения Как впихнуть функцию WP в CSS?

  • Сломал маленько голову…

    Хотелось сделать в лупе так:

    <div class=»panel buttons» style=»background-image: url(«<?php the_post_thumbnail(); ?>»)»>

    А зачем это нужно? Затем что бы в адаптивном шаблоне применить
    background-size: cover; и не париться на счёт внезапно выползающих полей при изменении пропорций контейнера.

    Но млин не работает так…
    Может ещё какие то решения есть?

Просмотр 9 ответов — с 1 по 9 (всего 9)
  • Модератор Юрий

    (@yube)

    <div class=»panel buttons» style=»background-image: url(«<?php the_post_thumbnail(); ?>»)»>

    Для начала кавычки вправьте. Если снаружи двойные, то внутри url() их использовать уже нельзя.

    не помогло.
    Вообще картина интересная:

    Вместо бекграунта видим ‘)»>

    Втоже время просматриваю код элемента в браузере и вижу, что путь до картинки как бы и прорисовался!

    <div class="panel buttons" style="background-image: url('<img width=" 1793"="" height="1100" src="http://al.tec/wp-content/uploads/2013/07/axis-q1921-camera-videonablydeniya.jpg" alt="camera-videonablydeniya">')"> </div>

    смущает ета вот фигня, явно не валидная
    background-image: url(‘<img width=»

    Модератор Юрий

    (@yube)

    явно не валидная

    Явно. Может стоит попробовать другие функции? Скажем, get_post_thumbnail_id и wp_get_attachment_image_src?

    Порушил соединение с БД (((
    после них

    Модератор Юрий

    (@yube)

    Порушил соединение с БД (((
    после них

    Соболезную. Но «после» не значит «вследствие». Либо совпадение, либо полезли руками туда, куда не надо лазить.

    Как можно порушить соединение с БД, вызвав стандартную функцию WordPress? Соединение было порушено явно по другой причине

    Таки было так… ничего другого изменить не успел,
    Но не суть.
    Всё восстановил теперь думаю где найдти эту the_post_thumbnail(); в недрах WP и вырвать ей все аппендиксы в виде <img width=» 1793″=»» height=»1100″ src=»

    Дальше видимо тема фильтрации функции должна перекочевать в раздел Хаков

    вот создал

    там нашёл кажется решение, но не понял его пока… (
    поможите если сможете…

    Забил я новомодные штуки в виде thumbnail

    добавил в функшенс.пхп

    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 = $matches [1] [0];
    
    // no image found display default image instead
    if(empty($first_img)){
    $first_img = "/wp-content/uploads/2010/03/103.jpg";
    }
    return $first_img;
    }

    вывожу первую картинку из поста style=»background-image: url(‘<?php echo catch_that_image(); ?>’); background-repeat: no-repeat; background-size: cover;»

    И наслаждаюсь))

    ЗЫ респект блогу

Просмотр 9 ответов — с 1 по 9 (всего 9)
  • Тема «Как впихнуть функцию WP в CSS?» закрыта для новых ответов.