SearchEngines.bg

Това е примерно съобщение за гост. Регистрирайте безплатен акаунт днес, за да станете потребител на SearchEngines.bg! След като влезете, ще можете да участвате в този сайт, като добавите свои собствени теми и публикации, както и да се свържете с други членове чрез вашата лична входяща кутия! Благодарим ви!

Търся помощ за проблем с плъгин за Wordpress

ronson

New member
Става въпрос за плъгина Post Image (http://guff.szub.net/2006/02/09/post-image/), чиято основна цел е да показва първото качено/атачното изображение в дадена публикация. Ползвам го, така че към заглавието на публикацията да има и изображение.

Когато го използвам в index.php или в archive.php, или в search.php, няма проблеми, картинките към публикациите се показват коректно.

Ползвам следния код:
Код:
<?php if (have_posts()) : ?>

    <ul>
    <?php while (have_posts()) : the_post(); ?>

    <li><a href="<?php the_permalink(); ?>"><?php post_image('/noimage1.jpg', true, true); ?><?php the_title(); ?></a></li>
            
    <?php endwhile; ?>
    </ul>

<?php endif; ?>
До тук всичко е ОК.

Проблема е следния - в single.php след края на публикацията искам да направя списък с публикациите от същата категория, нещо като "Подобни публикации". Ползвам следния код:

Код:
<?php
    $query= 'cat=' . $cat. '&orderby=date&showposts=10';
    query_posts($query); while (have_posts()) : the_post(); ?>
<?php if($post->ID != $currentPostID) { ?>
    <li><a href="<?php the_permalink(); ?>"><?php post_image('/noimage1.jpg', true, true); ?><?php the_title(); ?></a></li>
<?php } endwhile; ?>
Общо взето идеята на кода е да показва последните 10 публикации от същата категория, но без да включва в списъка текущата публикация.

Кодът работи и показва заглавията и снимките, но проблема е, че вместо снимката атачната към всяка публикацията, то за всички останали, с изключение на текущата публикация, се показва /noimage1.jpg (тоест, че няма снимка), въпреки, че всичките имат атачнати снимки.

Ползвайки моите крайно оскъдни знания по php, опитах се да намеря къде е грешката. В крайна сметка достигнах до ред 84 от плъгина:

Код:
if( $post->ID == $attachment->post_parent ) {
Този if прави една проверка на идентификатора на публикацията и на родителя на атачмента. Ако двете съвпадат, то това означава че към публикацията има атачното изображение и то се показва. Ако ли не, показва се /noimage.jpg.

Проследявайки стойностите на двете променливи, видях че $attachment->post_parent не се обновява правилно, само когато плъгина се ползва в single.php. В останалите случаи работи безотказно. Вместо това $attachment->post_parent е с фиксирана стойност = родителя на атачмента на текущата публикация. Това и обяснява защо, в single.php кодът връща правилното изображение само за текущата публикация, а за останалите връща /noimage.jpg

Ще съм много благодарен, ако някой може да помогне за решаването на проблема. Аз лично съм php и wordpress api инвалид.
 

Горе