Я пытаюсь создать плагин для Wordpress для моего блога, который сканирует сообщения, содержащие настраиваемое поле _videoembed
.Я все сделал, и он активируется правильно, но я получаю сообщение об ошибке PHP, когда открываю страницу, чтобы проверить это:
Fatal error: Call to a member function get_results() on a non-object in .../wp-content/plugins/youtubesubscription/videos.php on line 26.
Кто-нибудь знает достаточно о PHP, чтобы помочьменя нет?Вот мой код плагина (наклеенный на pastebin из-за размера): http://pastebin.com/uaEWjTn2
EDIT 1
Я больше не получаю никаких ошибок после вставки global $wpdb;
, носейчас ничего не видноВот мой обновленный код: http://pastebin.com/R2ZuEknY. Обратите внимание, этот код также включает в себя автоматические эскизы YouTube, которые были получены с помощью функции, которая обрезает URL-адреса YouTube до идентификаторов (ссылка).
РЕДАКТИРОВАТЬ 2
Все получилось, оказалось, что все, что мне нужно было сделать, это вставить '_videoembed' в качестве аргумента meta_key для wp_query.Вот мой рабочий код ниже:
<?php
$args = array(
'meta_key' => '_videoembed',
'post_status' => 'publish',
'posts_per_page' => '' . $number . '',
'order' => 'date'
);
query_posts( $args );
while ( have_posts() ) : the_post(); ?>
<?php
global $post;
$VIDEOID = ytvideoID($post->ID);
?>
<li onClick="window.location.href='<?php the_permalink(); ?>'">
<?php
global $post;
$videoId = ytvideoID($post->ID);
$videoInfo = parseVideoEntry($videoId);
echo '<a href="'.get_permalink().'">';
echo '<div class="image">';
echo '<img src="http://img.youtube.com/vi/'.$VIDEOID.'/default.jpg">';
echo '<div id="time" style="position:absolute;z-index:9;bottom:2px;right:2px;font-size:10px;color:#fff;background:#000;padding:0px 2px;-webkit-border-radius: 4px;-moz-border-radius: 4px;border-radius: 4px;opacity:0.75;">'.hms($videoInfo->length).'</div>';
echo '</div>';
echo '<h4>'.get_the_title().'</h4>';
echo '<div id="description">';
echo '<div id"views"><h3>'.number_format($videoInfo->viewCount).' Views</h3></div>';
echo '<div class="singleauthor"><h3>by '.$videoInfo->author.'</h3></div>';
echo '</div>';
echo '</a>';
?>
</li>
<?php endwhile;
// Reset Query
wp_reset_query();
?>