Puffar. Det lilla innehållet som leder till det stora. Länge skapade jag mina egna sorters puffar i Wordpress, tills jag hittade någon som gjort ett plugin för just detta ändamål.
Hur det funkar
Pluginet var till en början förvirrande när jag försökte förstå uppbyggnaden. Först ska en puff area skapas. Sedan ska widgets läggas till i rätt widget area och varje widget måste ha en puff area vald. Efter detta skapas puffarna. För varje puff måste man välja vilka sidor puffen ska vara synlig på och i vilken puff area den ska visas. Då gäller det att just den puff arean är vald till en widget som är placerad på just den sidan.
Även fast det känns lite krångligt att jobba med pluginet, så fyller det ändå en funktion. Vissa saker tycker jag själv kan förbättras, men det är ett bra plugin.
Ett tillägg
Varje puff kan länkas till en custom url. Dock är detta fält bara ett textfält. Jag ville gärna kunna välja bland de sidor jag skapat, så jag tweakade litegrann. I filen inc/puff-meta-boxes.php och funktionen spathon_puff_attributes_func lade jag till post metan _puff_link_id.
$puff_link_id = get_post_meta($post->ID, '_puff_link_id', true);
/**
*
* Puff link id
*
*/
?>
<p>
<label for="ps_puff_link_id"><strong><?php _e('Link', 'ps_puffar_lang'); ?></strong></label>
<?php wp_dropdown_pages(array('name' => 'ps_puff_link_id', 'selected' => $puff_link_id, 'show_option_none' => '- ingen -')); ?>
</p>
Och i functionen spathon_save_puff_meta lade jag till
/**
* Save the puff link id
*
* Delete the meta if empty else save the link id
*/
$puff_link = $_POST['ps_puff_link_id'];
if (empty($puff_link)) delete_post_meta($puff_id,'_puff_link_id');
else update_post_meta($puff_id,'_puff_link_id',$puff_link);
Efter detta så är det bara att hämta ut länken med
$puff_link_id = get_post_meta($post->ID, '_puff_link_id', true);
get_permalink($puff_link_id);
Läs mer: