Manablog Copyのトップページの1記事目にランダム表示を追加する

ブログ

Manablog Copyのトップページの1記事目にランダム表示を追加する

トップページを固定ページにしました。

けれど、特化ブログでないとトップを固定ページにする必要はないです。

っていうか面倒なんです。

代わりにトップページの1記事目にランダムのピックアップ記事を表示しました。

デフォルトのピックアップ記事表示でいいんです。

だけど、雑記ブログだとランダム表示でいいと思ったんです。

 

追記:カスタムフィールドのpointを追加することで表示したい記事だけのランダムにしました。

Custom Field Bulk Editorを使えば簡単に追加できます。

meta_key=point&を追加してmeta_key=point&showposts=1&orderby=rand

query_postsは非推奨なんだけど、WP_Queryはあんまり…

 

1記事目にピックアップ表示を追加するソース

index.phpを完全に上書きするだけ!

注意;必ず子テーマのindex.phpに上書きしてください。

バックアップをFTPでアップするとき間違えて上書きしてブログが表示されなったので気をつけてくださいね。


<?php get_header(); ?>


<?php if (is_home && !is_paged()) : ?>

<?php
        query_posts('showposts=1&orderby=rand');
while ( have_posts() ) : the_post() ;
$thumb = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'thumbnail_size' );
if ( !empty($thumb['0']) ) {
	$url = $thumb['0'];
} else {
	$url = get_template_directory_uri() . "/images/no-image.png";
}
?>

<div class="col-xs-12 wrap">

<center>
	<h2 style="padding-top: 0px;"><font color="#375f8c"><b>ピックアップ!</b></font></h2>
</center>



	<?php get_template_part( 'meta' ); ?>

	<!-- タイトル表示 -->
	<h2 class="title" itemprop="name headline">
		<a href="<?php the_permalink(); ?>" title="<?php printf(the_title_attribute('echo=0') ); ?>" itemprop="url"><?php the_title(); ?></a>
	</h2>

	<p class="cat"><?php the_category( ' ' ); ?></p>

	<div class="new">
	<!-- サムネイルの表示 -->
	<div itemprop="image" itemscope itemtype='https://schema.org/ImageObject' class="thumbnail">
		<a style="background-image:url(<?=$url?>);" href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" itemprop="url" itemscope class="thumbnail-img"></a>
	</div></div>

	<!-- ディスクリプションの表示 -->
	<p itemprop="description" class="description">
		<?php echo mblog_meta_description(); ?>
	</p>



<?php endwhile; ?>
<?php wp_reset_query(); ?>

<?php endif; ?>






<?php
while ( have_posts() ) : the_post() ;
$thumb = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'thumbnail_size' );
if ( !empty($thumb['0']) ) {
	$url = $thumb['0'];
} else {
	$url = get_template_directory_uri() . "/images/no-image.png";
}
?>


<div class="col-xs-12 wrap">



	<?php get_template_part( 'meta' ); ?>

	<!-- タイトル表示 -->
	<h2 class="title" itemprop="name headline">
		<a href="<?php the_permalink(); ?>" title="<?php printf(the_title_attribute('echo=0') ); ?>" itemprop="url"><?php the_title(); ?></a>
	</h2>

	<p class="cat"><?php the_category( ' ' ); ?></p>

	<div class="new">
	<!-- サムネイルの表示 -->
	<div itemprop="image" itemscope itemtype='https://schema.org/ImageObject' class="thumbnail">
		<a style="background-image:url(<?=$url?>);" href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" itemprop="url" itemscope class="thumbnail-img"></a>
	</div></div>

	<!-- ディスクリプションの表示 -->
	<p itemprop="description" class="description">
		<?php echo mblog_meta_description(); ?>
	</p>
	<div class="readmore"><a href="<?php echo get_permalink(); ?>">この記事を読む</a></div>

</div>


<?php endwhile; ?>







<div class="col-xs-12 navigation">
	<div class="pull-left"><?php previous_posts_link( '<i class="fa fa-angle-left"></i> 前のページ' ); ?></div>
	<div class="pull-right"><?php next_posts_link( '次のページ <i class="fa fa-angle-right"></i>', '' ); ?></div>
</div>



<?php get_footer(); ?>

トップページの1記事目だけに表示

条件分岐でトップページの1記事目にだけピックアップを表示しています。

ランダムに1記事だけ表示しています。

表示する記事数は簡単に変更できます。

&orderby=randを削除すると最新記事になります。

&orderby=modifiedにすることで最終更新日の記事になります。



タイトルとURLをコピーしました