Вставка миниатюры последнего видео в сайдбар
-
К сожалению, не очень силён в php
А нужно сделать следующее:
Имеется категория «видео»
В записях этой категорий стоит код из youtube и возможно небольшой комментарий.
Нужно чтобы в сайдбаре отображалась миниатюра последнего видео из записей этой категории и заголовок этой записи.вот в принципе и всё.
Нашёл рецепт тутНо проблема в том, что у нас немного переделанный вордпресс. «Произвольных полей» нет. Можно ли как-то решить задачу, которую я описал без произвольных полей.
Очень благодарен буду за совет.
-
В записях этой категорий стоит код из youtube и возможно небольшой комментарий.
Нужно чтобы в сайдбаре отображалась миниатюра последнего видео из записей этой категории и заголовок этой записи.В принципе, получить ютубовскую миниатюру не сложно, но код, который должен вычленять идентификатор ролика, зависит от html-кода, полученного с ютубы и вставленного в запись, а тут возможны разные варианты.
у нас немного переделанный вордпресс.
Если так, то где гарантия, что у вас будет работать код для «непеределанного»? Мало ли чего еще в вашем вордпрессе нет. Это серьезное осложнение.
да нет, просто именно функция произвольных полей удалена, так как задача была максимально облегчить вордпресс, ибо нагрузка на сайт большая. а так всё работает как обычно
а код с ютуба обычный . такого примерно вида:
<iframe width=»560″ height=»315″ src=»http://www.youtube.com/embed/ooDkGZPt-t8″ frameborder=»0″ allowfullscreen></iframe>
«Скелетика» хватит? самостоятельно допилите?
буду благодарен хоть за что-то)))
если что, спрошу
$ytposts = get_posts('category=123&numberposts=1'); // вместо 123 - id категории $ytpost = $ytposts[0]; if (preg_mtch('|/embed/(.+?)"|', $ytpost->post_content, $yt)) { echo "<img src='https://i1.ytimg.com/vi/$yt[1]/mqdefault.jpg'>"; echo "<h3>$ytpost->post_title</h3>"; }Спасибо.
Вставил ваш код<?php $ytposts = get_posts('category=819&numberposts=1'); // вместо 123 - id категории $ytpost = $ytposts[0]; if (preg_mtch('|/embed/(.+?)"|', $ytpost->post_content, $yt)) { echo "<img src='https://i1.ytimg.com/vi/$yt[1]/mqdefault.jpg'>"; echo "<h3>$ytpost->post_title</h3>"; } ?>пишет, что Call to undefined function preg_mtch() in
if (preg_mtch('|/embed/(.+?)"|', $ytpost->post_content, $yt)) {Ну, букву пропустил в preg_match…
я так и думал.)) сейчас попробую
Плагин PHP Text Widget
«Текст» в виджете<?php $ytposts = get_posts('category=1&numberposts=1'); $ytpost = $ytposts[0]; if (preg_match('|/embed/(.+?)"|', $ytpost->post_content, $yt)) { echo "<img src='https://i1.ytimg.com/vi/$yt[1]/mqdefault.jpg'>"; echo "<h3>$ytpost->post_title</h3>"; } ?>Текст в посте:
В этом посте имеется ролик с ТыТюбика. <iframe width="560" height="315" src="http://www.youtube.com/embed/ooDkGZPt-t8" frameborder="0" allowfullscreen></iframe>Скриншот: http://s3.itrash.ru/idb/3670/oSnimok_ekrana_ot_2013-02-13_21:48:24.png
Смотрите, в чем и где Вы промахнулись.
Плагин PHP Text Widget
Не очень понял. Я ведь не пользуюсь виджетом, а вставляю прямо в side-left.php
или дело в том, что я должен что-то изменить в коде?
Юрий, вам объяснил всё максимально хорошо. Вставляйте кусок этого кода в свой файл и будет вам счастье.
Я ведь не пользуюсь виджетом, а вставляю прямо в side-left.php
А я не хотел править код темы, поэтому воспользовался плагином и стандартным виджетом. Нет принципиальной разницы в способе вставки кода. Но, возможно, есть непринципиальная. Поэтому я счел нужным указать конфигурацию.
что я должен что-то изменить в коде?
Я привел полностью рабочий (как минимум, в одной конфигурации) код. Не имея телепатических способностей, я не могу сказать, почему у Вас он не сработал.
Ладно, к черту телепатию. Будем делать вскрытие.
Указано
category=819.
Открываем http://allbiathlon.com/?cat=819.
Видим одну запись Фильм о М. Фуркаде.
Смотрим внутрь.
<object width="560" height="315" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/ooDkGZPt-t8?hl=ru_RU&version=3" /><param name="allowfullscreen" value="true" /><embed width="560" height="315" type="application/x-shockwave-flash" src="http://www.youtube.com/v/ooDkGZPt-t8?hl=ru_RU&version=3" allowFullScreen="true" allowscriptaccess="always" allowfullscreen="true" /></object>Я же спрашивал, какой код? Что ВЫ ответили?
а код с ютуба обычный . такого примерно вида:
<iframe width="560" height="315" src="http://www.youtube.com/embed/ooDkGZPt-t8" frameborder="0" allowfullscreen></iframe>Ну ёмоё.
как задать размер миниатюры
Как обычно — указать width и/или height. Для совсем маленькой лучше использовать /default.jpg
сделать её кликабельной со ссылкой на запись-источник?
echo '<a href="' . get_permalink($ytpost->ID) . '">'; echo "<img src='https://i1.ytimg.com/vi/$yt[1]/mqdefault.jpg'>"; echo '</a>';
Тема «Вставка миниатюры последнего видео в сайдбар» закрыта для новых ответов.