• 新着ニュースに掲載していく「投稿」によるページ作成も、固定ページとなる「ページ」もどちらもですが、
    ページごとに、公開したい日時の範囲を指定したいのですが、公開開始の日時しか設定が出てこず困っております。
    終了日時の指定はどうやっておこなえばいいでしょうか。
    イベント、キャンペーンなどはこのようにしたくなるのが当たり前ですし、他のCMSだと当たり前にあるのでWordPress純正でどこかに設定があるはずなんですかなかなか見つけることできませんでして・・・
    宜しくお願い致します。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • こんにちは

    ワードプレスのそれぞれの投稿や、固定ページには、カスタムフィールドという投稿メタデータを登録できる仕組みがあります。
    それぞれの投稿やページに固有の値を設定できるので、ここに終了日を登録しておいて、

    テンプレートで、終了日飲めたデータが存在し、かつ終了日を過ぎていない、公開投稿を表示するといった考え方でカスタマイズできるんじゃなかいかなと思います。

    プラグインを使ったほうがよければ、私は使ってないのですが、

    http://www.doya-doya.com/word-press/2011/07/07/7330

    というサイトで、そのようなプラグインを紹介している人がいました。

    トピック投稿者 gapel

    (@gapel)

    nobita様、ご助力ありがとうございます。

    そうですか、これもカスタムフィールドでできるのですね。
    どのようにしてできるのかネット検索などして調べてみますね。

    プラグインの方は、どうやらそのままでは9時間くらい時間がずれてしまうそうで、
    バージョンアップするたびに変更が必要な代物らしいです。
    実際、先ほど入れて、かつ、9時間以上過去の公開終了設定をしたのですが、稼働してくれませんでしたし、複数サイト運営していることも考えれば管理し忘れが必ず起こるのでやめておきました。

    いつもありがとうございます。

    gapelさん こんにちは

    実際、先ほど入れて、かつ、9時間以上過去の公開終了設定をしたのですが、稼働してくれませんでしたし、複数サイト運営していることも考えれば管理し忘れが必ず起こるのでやめておきました。

    かえって、手を煩わせてしまったようで、反省です

    正常に動作しないプラグインは、利用しないほうがいいと思います

    行きがかりなので、一応プラグインをみてみました。

    使う使わないは別として、一応の動作をさせるための設定をメモに残しておきます。

    テーマのfunctions.phpに
    (get_option( ‘timezone_string’ ) をプラグインが使っているんですが、default nullなので、)

    update_option( 'timezone_string' , 'UTC+9' );

    として、

    post-expirator.phpの以下の関数部分を

    function expirationdate_delete_expired_posts() {
    	global $wpdb;
    	postExpiratorTimezoneSetup();
    	$time_delete = time();

    $time_delete = time() + 60*60*9;

    に変更すると、一応動作は、するようでした

    プラグインの方は、どうやらそのままでは9時間くらい時間がずれてしまうそうで、
    バージョンアップするたびに変更が必要な代物らしいです。

    この現象は、wp-settings.php で date_default_timezone_set (‘UTC’) と決め打ちされているために、time()などの関数が、date_default_timezone_set (‘UTC+9’)にセットしなおしても反映しないという事なんじゃないかなと、思いました。

    で、いつか使えるものになってくれるといいので、自信はないのですが、その事を、プラグインの制作者のブログにコメントしてみました。

    カスタマイズ、がんばってください

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「「投稿」「ページ」共に公開日時の範囲を決めたい」には新たに返信することはできません。