こんにちは
WordPressには、$postsとか$postといったグローバル変数があるので、カスタマイズする場合は、カスタマイズ用のプレフィックスを付けた変数名にしたほうがいいです。
例えば、以下のように
$args = array(
'posts_per_page' => 1,
'category_name' => 'aciform',
'orderby' => 'post_modified',
'order' => 'DESC',
'post_type' => 'post',
'post_status' => 'publish',
);
$my_posts = get_posts($args);
if ( isset( $my_posts[0] ) && !empty( $my_posts[0] ) ) {
echo esc_html( $my_posts[0]->post_modified );
}
提示コードには、foreach ループが使われていますが、post_per_pageが一件に指定されているので、上記のような記述でも大丈夫だと思います。
nobita様
早速のご教授ありがとうございます!
上記のコードで無事取得出来たのですが、日付の他に
時間(2015-03-27 →08:53:28)まで取得してしまいます。
<?php the_modified_date(‘Y/n/j’); ?>
の様に日付の表示変更は出来ないでしょうか?
度々ご迷惑をお掛けしますが、よろしくお願い致します。
以下でどうですか?
$args = array(
'posts_per_page' => 1,
'category_name' => 'aciform',
'orderby' => 'post_modified',
'order' => 'DESC',
'post_type' => 'post',
'post_status' => 'publish',
);
$my_posts = get_posts( $args );
if ( isset( $my_posts[ 0 ] ) && !empty( $my_posts[ 0 ] ) ) {
echo vsprintf( "%04d-%02d-%02d", explode( '-', $my_posts[ 0 ]->post_modified ) );
}
echo get_post_modified_time( 'Y/n/j', false, $my_posts[0] );
これか、
echo mysql2date( 'Y/n/j', $my_posts[0]->post_modified, false );
こちらはいかがでしょうか。
個人的には、フィルターフックが付いている前者をおすすめします。
nobita様
x743様
お二人共ありがとうございました!
どちらの方法でも無事表示する事が出来ました!
いただいたコードを理解出来るように勉強したいと思います。