Zoekwoorden maken van je tags

VN:F [1.9.17_1161]
Rating: 0.0/5 (0 votes cast)

Wil je je tags net zo weergeven als op veel stockfoto websites? Met andere woorden: een checkbox voor elke tag en de aangevinkte tags gebruiken als zoekwoorden. Dat kan! :)

:!: Waar je van tevoren wel rekening mee moet houden: Shopp zoekt momenteel nog niet in de tags die zijn toegewezen aan een product (alleen titel, omschrijving en inhoud). Om er dus voor te zorgen dat de zoekwoorden ook op de tags werken (lees: resultaten oplevert met producten die ook die tag(s) hebben) zou je de tags in de omschrijving (summary) kunnen zetten als tijdelijke work-around (het doorzoeken van ook de tags wordt waarschijnlijk vanaf v2.0 beschikbaar). :!:

Code voor je functions.php

Okee, we voegen de volgende code toe aan de functions.php van je theme:

<?<a title="Zie ook Code in posts hersteld" href="http://hiranthi.nl/wordpress/code-in-posts-hersteld/">php</a>
if ( isset($_GET['s']) &#038;& is_array($_GET['s']) ) { $_GET['s'] = implode(' ', $_GET['s']); }
?>

Bovenstaande code zorgt ervoor dat de array ‘s’ (de zoekwoorden v/d tags) wordt omgezet naar een string. Dus in plaats van allemaal kleine stukjes genaamd ‘s’ (waarvan de inhoud verschillend is) wordt het een stuk genaamd ‘s’ waar alle kleine stukjes inzitten als geheel.

Code voor je product.php

Dan de code die er voor zorgt dat je een checkbox bij elke tag krijgt en ervoor zorgt dat je de geselecteerde tags kunt gebruiken als zoekwoorden:

<?php

if(shopp('product','has-tags'))
{
?>
<form method="get" action="<?php bloginfo('url'); ?>">
<input type="hidden" name="st" value="shopp" />
<ul><?php
        while(shopp('product','tags')) // while-loop om alle tags 1 voor 1 door te lopen
        { ?>
<li><label for="<?php shopp('product','tag'); ?>">
<input type="checkbox" name="s[]" value="<?php shopp('product','tag'); ?>" id="<?php shopp('product','tag'); ?>" /> <?php shopp('product','tag'); ?></label></li>

    <?php } ?></ul>
<input type="submit" value="Zoeken" />
</form>

<?php
}

?>

Bovenstaande code plak je in product.php (van je Shopp custom templates) op de plek waar je de tags weer wilt geven.

  • Facebook
  • Twitter
  • Delicious
  • Digg
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

Geef een reactie

Your email address will not be published. Please enter your name, email and a comment.

*

De volgende HTML tags en attributen zijn toegestaan: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <div align="" class="" dir="" id="" lang="" style="" xml:lang=""> <pre class="">

CommentLuv badge