• 解決済 ryo000

    (@ryofd)


    WordPress投稿画面の公開パネルにある「すぐに公開する」の編集リンクを押すと、
    年、月、日、時、分は指定出来るのですが、秒は指定出来ません。

    ただ、秒が保存されていないわけではなく(あたりまえですが)、どうやら投稿時の秒を取得して保存しているようです。

    そこで、秒を指定出来るinput要素を追加したいのですが、そのような方法や関連するフックなどはあるのでしょうか。

    ソースをみると秒はhidden属性付きのinput要素でPOSTされているようです。
    <input type="hidden" id="ss" name="ss" value="58">

    なにか方法はありますか?

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • モデレーター Daisuke Takahashi

    (@extendwings)

    その部分のWordPressの内部の処理を追えば不可能な話ではないですが、フックなどはありません。

    方法としては当該のメタボックスを自作したメタボックスと差し替えることになるかと思います。

    次のコードを使用されているテーマのfunctions.phpに書いてみてください。

    add_action( 'admin_head', function () {
    ?>
    <style>
    .timestamp-wrap #ss { width: 2em; padding: 1px; font-size: 12px; }
    </style>
    <script>
    ( function($) {
    	$(document).ready( function() {
    		$( '.timestamp-wrap' ).append( ':' ).append( $( '#ss[type=hidden]' ).attr( 'type','text' ) );
    	} );
    } )( jQuery );
    </script>
    <?php
    } );

    上記でやっていることは、ryofdさんが書かれたidがssのinput要素について、
    type属性をtextに変えつつ、公開時間の入力エリアに移動しています。

    Chromeを使って、WordPress 4.0.1で保存できることは確認済みです。スタイルは
    分などと揃えていますが、ブラウザによっては改行してしまうかもしれません。
    そこはご勘弁を。

    トピック投稿者 ryo000

    (@ryofd)

    Daisuke Takahashiさん

    ご返信ありがとうございます。
    ちょっと調べただけですが、こちらでも情報を探す事ができませんでした。
    やはり簡単ではないようです。

    tmatsuurさん

    ありがとうございます!
    秒inputが表示され、変更出来ることを確認出来ました。
    ただ、既存記事で日時分を変更せずに秒のみ変更した場合は、反映されませんでした。
    これは元々秒を更新出来ない仕様のため、日時を更新したと判断されていないためでしょう。
    それでも、やりたいことをほぼできています。
    本当にありがとうございました。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「投稿画面の公開日時を秒まで指定したい」には新たに返信することはできません。