Wordpress - related posts (items)
4 naročniki
4 naročniki
Rad bi naredil, da bi se mi v vsakem postu ob strani (pač v "div-u") prikazal seznam related postov oziroma postov iz iste kategorije.
Sepravi, seznam bi moral prikazati poste iz iste kategorije kot post v katerem je seznam, pri čemer bi moral izpisati Titleposta, Sliko posta, ki jo vsak post vsebuje pod $mainimg ter Ceno, ki jo vsak post vsebuje pod $price.
V tem smislu.
Lahko kdo skupaj vrže to kodo, css bom že, samo PHP mi dela težave ;)
15 odgovorov
takole mam jaz v eni temi:
<?php
// this is where 10 headlines from the current category get printed
if ( is_single() ) :
global $post;
$categories = get_the_category();
foreach ($categories as $category) :
?>
<li><h2>Več iz te kategorije</h2>
<ul>
<?php
$posts = get_posts('numberposts=10&category='. $category->term_id);
foreach($posts as $post) :
?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
</ul>
</li>
<?php endforeach; endif ; ?>
sam še custom fields dodaš za img in ceno pa bi moralo delat
Zadeva skoraj narejena, samo en bug se mi pojavlja v kodi. Naslovi in linki pod slikami so pravi, slike pa so vse iste (ena in ista slika), in sicer iz custom field-a post-a, ki je odprt. Slike morajo pripadati naslovom oziroma postop iz iste kategorije. Kje je bug?
Koda:
<div>
<a href="<?php the_permalink(); ?>" title="<?php thetitle(); ?>"><img src="
<?php
$mainimg = getpostcustomvalues("Mainimg");
if($mainimg[0] == NULL){
echo "nislike.jpg";
} else{
echo $mainimg[0];
}
?>" alt="<?php thetitle(); ?>" width="120px" />
</a>
<br />
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></div>
Hvala za pomoč
A ti skoz meče ni_slike.jpg?
Potem gotovo tale if/else stavek ne štima oz. ne deuje kot ti pričakuješ:
if($mainimg[0] == NULL){
echo "ni_slike.jpg";
} else{
echo $mainimg[0];
}
To deluje, prikazuje mi samo sliko, ki jo vsebuje post, v katerem se nahaja blok Related Items. Sepravi, tisti post ki ga odprem, so spodaj v Related Items slike tega posta, example:
getpostcustom_values("Mainimg"); Ta funkcija ti vrne array z slikami, $mainimg[0] pa ti vrne sliko na poziciji 0, se pravi 1. Preveri kaj se zgodi če to 0 zamenjaš z drugo številko... jaz osebno sicer nisem nikoli programiral wordpressa, tako da ti direktne kode na žalost ne morem podati.
Potem moraš nekaj drugega klicati v funkciji: getpostcustom_values("Mainimg"); in ne Mainimg, predvidevam iz kode. Če je to celotna koda tega bloka.
Razen če obstaja kaka druga funkcija ki vrne sliko objekta, tako kot imaš thepermalink(), thetitle(), obstaja the_image() ? V nasprotnem primeru pa mislim da jo lahko na hitro napišeš... Stvar 3 minut kode.
Ja, izpiši si $mainimg, a ne? Da boš videl, kaj je sploh notri. echo() oz. print_r(). To je zelo WP-specific zadevca. No, povej nam prosim, kaj vrne funkcija, da ti bomo znali pomagati. :)