マーカーネット株式会社

WEB制作ブログ WEBデザイン、HTMLコーディング、PHP、スマートフォン制作などWEB制作全般に役立つ情報を発信していきます。

WordPress

<WordPress>公開終了日を実装する方法。

投稿日:2014年9月8日 更新日:

公開期間プラグイン「post-expirator」を使わずに
公開終了日を実装する方法をご紹介します。

「カスタムフィールド」に「公開終了」項目を追加し、
その条件を満たしていれば表示させる仕組みです。

【手順】
1)カスタムフィールドテンプレート に「公開終了」項目を追加します。
日付のフォーマットは yyyy/mm/dd にする。

[pubend]
type = text
size = 35
date=true
dateFormat = yyyy/mm/dd
label = 公開終了日(year/month/day)

[pubend_hour]
type = select
value = 00:00:00 # 01:00:00 # 02:00:00 # 03:00:00 # 04:00:00 # 05:00:00 # 06:00:00 # 07:00:00 # 08:00:00 # 09:00:00 # 10:00:00 # 11:00:00 # 12:00:00 # 13:00:00 # 14:00:00 # 15:00:00 # 16:00:00 # 17:00:00 # 18:00:00 # 19:00:00 # 20:00:00 # 21:00:00 # 22:00:00 # 23:00:00
default = 00:00:00
label = 公開終了日(hour)

2)次にWordPressのテンプレートを調整します。

<?php

// 本日日付、時を取得
$currnet_date = date_i18n( ‘Y/m/d’ );
$currnet_hour = date_i18n( ‘H:i:s’ );

global $post;
$args = array(
‘post_status’ => ‘publish’,
‘post_type’ => ‘specialdia’,
‘posts_per_page’ => -1,
// カスタムフィールドテンプレート’pubend’の値が本日より後の投稿
‘meta_query’ => array(
‘relation’ => ‘AND’,
array( ‘key’=>’pubend’,
‘value’=>$currnet_date,
‘compare’ => ‘>=’,
‘type’ => ‘DATE’
)
),
);
if(have_posts()) : query_posts( $args );
while (have_posts()) : the_post();

if ( post_custom(‘pubend_hour’) ) :
$pubend_hour = post_custom(‘pubend_hour’) ;
else :
$pubend_hour = ’00:00:00′;
endif;

if ( strtotime(post_custom(‘pubend’).””.$pubend_hour) >   strtotime($currnet_date.””.$currnet_hour) ) :
?>
<li><a href=”<?php echo “リンク先”?>” ><?php the_title(); ?></a></li>
<?php
endif;//
endwhile;
endif;
wp_reset_query();
?>

cronがつかえないサーバ環境などでお試しになってはいかがでしょうか。

-WordPress

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

ワードプレスでどのテンプレートを使っているか見えるプラグイン

page.php や single.php は区別がついても archive.php や author.php になると どのテンプレートを利用しているか追跡するのに苦役を強いられるWordPress …

予約投稿を失敗しないドクターX的ワードプレスプラグイン

WordPressには未来の日時を指定して公開する予約投稿機能がございます。 組織で運用するブログなどでは時間を決めて記事を公開することが重要になることが多々あるようです。 ただし、WordPress …

スマートフォンサイトのオリジナルテーマ作成時に利用したいプラグインMulti Device Switcher<WordPress>

スマートフォンサイト用のオリジナルテーマを作成する WordPressプラグインとしては、『WPtouch Mobile Plugin』が有名ですが、 最新バージョンでは、オリジナルテーマを作成する場 …

ワードプレスのIDを可視化するためだけのシンプルなプラグイン

ワードプレスのIDを可視化するためだけのシンプルなプラグイン

WordPressの固定ページ、投稿記事、カテゴリやタグなどにはそれぞれユニークなIDがあります。 IDはWordPressが自動的に個別に割り当ててくれるため、普段は意識することはございません。 デ …

ファーストサーバの『ウルトラビジネス2』でうまくWordPressが動作しない場合について

ファーストサーバの『ウルトラビジネス2』でうまくWordPressが動作しない場合について

ファーストサーバの『ウルトラビジネス2』に WordPressをインストールした場合、 固定ページで日本語タイトルで更新すると保存できない現象が起こります。 (アルファベットのタイトルだと問題なく保存 …