br i kode

Tonny Kluften

Administrator
God mandag folkens. Jeg erklærer herved kommende uke for "Uken for rikdom og lykke". Det betyr kort og greit at alle webforumets medlemmer blir litt rikere og litt lykkeligere denne uka. Ikke medlem ennå? Registrer deg og ta del du også :)

Så til saken. Denne koden viser de fem siste poster. <?php get_archives('postbypost', '5', 'html', '', '', FALSE); ?>
Hvordan lager jeg mellomrom mellom postene eller lar hver post bli inne i en <p> tag eller en div?

Evt. kunne et plugin som lar deg konfigurere alt dette vært like greit å bruke.
 
Sist redigert:
Skal vel funke med CSS

div.widget_recent_entries ul li {
margin-bottom: 15px;
}

Hvis du ønsker mer mellomrom mellom tittel og første i listen

div.widget_recent_entries div-widget-title {
margin-bottom: 15px;
}
 
Sist redigert:

picxx

WF 09
Tipper villt her, men der det står "","" er vel kanskje muligens pre og post funksjonene til html funksjonen?
Om du da setter inn en <li >, </li > burde det vel gå greit?
Evt bare slenge inn en <br -/ > på post funksjonen?
 

Tonny Kluften

Administrator
Dette er ikke en Widget.

Fant forøvrig en plugin som jeg modifiserte bittelitt:

Inn i sidebar:
Kode:
<?php echo do_shortcode('[latestbyauthor]'); ?>

Pluginkode, fila heter Latest_posts.php:
Kode:
<?php

/*
Plugin Name: Latest Posts by Author
Plugin URI: http://wordpress.org/#
Description: Displays a list of recent posts by the specified author
Author: Alex Mansfield
Version: 0.2
Author URI: http://alexmansfield.com/
*/

function latest_posts_by_author($array) {
extract(shortcode_atts(array('author' => 'admin', 'show' => 5), $array));

global $wpdb;
$table = $wpdb->prefix . 'users';
$result = $wpdb->get_results('SELECT ID FROM '.$table.' WHERE user_login = "'.$author.'"');
$id = $result[0]->ID;
$table = $wpdb->prefix . 'posts';
$result = $wpdb->get_results('SELECT * FROM '.$table.' WHERE post_author = '.$id.' AND post_status = "publish" AND post_type = "post" ORDER BY post_date DESC');
$i = 0;
$html = '<ul>';
foreach ($result as $numpost) {
$html .= '<li><br /><a href="'.$numpost->guid.'">'.$numpost->post_title.'</a></li>';
$i++;
if($i == $show){
break;
}
}
$html .= '</ul>';

return $html;
}

add_shortcode('latestbyauthor', 'latest_posts_by_author');

?>
 
Sist redigert:

Mr Vest

Sjefen over alle sjefer!
<?php the_time('j. F, Y'); ?> kan vel egentlig kun brukes i en vanlig liten Wordpress-loop, noe dette innstikket definitivt ikke kan kalles. Jeg er litt imponert over koden som er brukt i dette innstikket, og at det ikke kun er en ekstra liten loop som viser X siste bloggposter her (samme som forsiden men med bare tittel) kan jeg ikke helt forstå.

$html .= '<li><br /><a href="'.$numpost->guid.'">'.$numpost->post_title.'</a></li>';

Kan byttes til noe lignende dette. (ikke helt sikker her nå.: )

$html .= '<li><br />'.$numpost->post_date.'<a href="'.$numpost->guid.'">'.$numpost->post_title.'</a></li>';

Ellers vil jeg ikke akkurat anbefale bruk av det innstikket. Det er mye enklere om du på en måte heller bruker en ekstra liten loop i sidebar. Den vil fungere akkurat som forsiden på bloggen, bare det at kun f.eks tittel og dato fra innleggene hentes ut. Mye mer ryddig og enklere..
 
Sist redigert:

picxx

WF 09
Hva med

<?php get_archives('postbypost', '5', 'html', '<li>', '</li>', FALSE); ?>
 

Mr Vest

Sjefen over alle sjefer!
Huff, jeg fikk ikke helt med meg den med en gang...

Anbefaler deg å ikke bruke den heller faktisk. Jeg ser på Wordpress.org at den funksjonen faktisk er i ferd med å gå ut, så plutselig etter et par oppgraderinger kan det være den plutselig ikke funker. Denne derimot, som jeg mener kom samtidig som den du nå bruker ble bestemt at skulle bort er testet og funker: (Bytt ut FØR og ETTER med koden du vil ha. Om du ikke vil ha kode kan du ta det bort...) :)

<?php wp_get_archives('type=postbypost&limit=20&before=FØR&after=ETTER&format=custom'); ?>
 
Sist redigert:

Tonny Kluften

Administrator
picxx. <?php get_archives('postbypost', '5', 'html', '<br />', '<br />', FALSE); ?> fungerer.

Det gjør også <?php wp_get_archives('type=postbypost&limit=20&before=<br />&after=<br />&format=custom'); ?>

Da bruker jeg den siste siden det tydeligvis er fremtiden. Ryktepoeng til begge :)

Siste spørsmål er da hvordan jeg setter inn 'j-m-Y' i den koden for å vose postdato for hver enkelt post?
 
Sist redigert:

Mr Vest

Sjefen over alle sjefer!
Hehe, jeg må jo si det var godt gjort og glemme det spørsmålet. Jeg vet ikke hvordan du kan hente ut dato og klokkeslett på postene når du bruker wp_get_archives() faktisk. Om du heller bytter ut den linja med følgende kode (som da er en loop) er saken en annen:

PHP:
<?php query_posts('showposts=5'); ?>
<?php while (have_posts()) : the_post(); ?>
	<?php the_time('j. F, Y'); ?> <a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a><br />
<?php endwhile; ?>

Der har jeg lagt inn koden fra Mattis slik at den kommer ut rett før tittelen. På en måte er det altså alt mellom <?php while (have_posts()) : the_post(); ?> og <?php endwhile; ?> som her er loopen...
 

Tonny Kluften

Administrator
Herlig, tusen takk, da ble resultatet slik:

PHP:
<ul id="siste_poster">
<?php query_posts('showposts=5'); ?>
<?php while (have_posts()) : the_post(); ?>
<?php the_time('j-m-Y'); ?> 
<br />
<a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a>
<br />
<br />
<?php endwhile; ?> 
</ul>
 
Topp