Twenty Twelve 投稿日・投稿者を非表示に

TwentyTwelveのちょっとした部分をカスタマイズする方法を紹介していきます。

また、子テーマで出力部分を変更する際に、翻訳が必要な部分//_()の部分がでてきますので、以下の投稿も参考にしていただけたらと思います。翻訳ファイルの子テーマ化

投稿日を非表示に

各記事やページの下に出力される日付(on ~)を非表示にします。やり方は2通りあります。

1. プラグインをインストール

WP Date Remover 特に設定等はないようですが、「投稿日:」というテキストは消せません。

2. functions.phpを編集

単体ページ・カテゴリ・タグごとのページすべてこのtwentytwelve_entry_meta(/wp-content/themes/twentytwelve/functions.phpを参照)を使用して出力させているようなので、変更部分は1箇所です。
functions.php(子テーマ)へそのまま追加して下さい。

function twentytwelve_entry_meta() {
    // Translators: used between list items, there is a space after the comma.
    $categories_list = get_the_category_list( __( ', ', 'tt_child' ) );

    // Translators: used between list items, there is a space after the comma.
    $tag_list = get_the_tag_list( '', __( ', ', 'tt_child' ) );
/* 日付は不要なのでコメントアウトする
    $date = sprintf( '<a href="%1$s" title="%2$s" rel="bookmark"><time class="entry-date" datetime="%3$s">%4$s</time></a>',
        esc_url( get_permalink() ),
        esc_attr( get_the_time() ),
        esc_attr( get_the_date( 'c' ) ),
        esc_html( get_the_date() )
    );
ここまで */
    $author = sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s" title="%2$s" rel="author">%3$s</a></span>',
        esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ),
        esc_attr( sprintf( __( 'View all posts by %s', 'tt_child' ), get_the_author() ) ),
        get_the_author()
    );
/* 以下3つの$utility_textを書き換えて下さい。 */
    // Translators: 1 is category, 2 is tag, 3 is the date and 4 is the author's name.
    if ( $tag_list ) {
//      $utility_text = __( 'This entry was posted in %1$s and tagged %2$s on %3$s<span class="by-author"> by %4$s</span>.', 'twentytwelve' );
        $utility_text = __( 'This entry was posted in %1$s and tagged %2$s <span class="by-author"> by %4$s</span>.', 'tt_child' );
    } elseif ( $categories_list ) {
//      $utility_text = __( 'This entry was posted in %1$s on %3$s<span class="by-author"> by %4$s</span>.', 'twentytwelve' );
        $utility_text = __( 'This entry was posted in %1$s <span class="by-author"> by %4$s</span>.', 'tt_child' );
    } else {
//      $utility_text = __( 'This entry was posted on %3$s<span class="by-author"> by %4$s</span>.', 'twentytwelve' );
        $utility_text = __( 'This entry was posted <span class="by-author"> by %4$s</span>.', 'tt_child' );
    }

    printf(
        $utility_text,
        $categories_list,
        $tag_list,
        $date,
        $author
    );
}

Googleの検索結果に表示される日付はどこからくるのかというのを実験するため、いったん全記事の日付を非表示にしてみました。Googleさん、年末年始通してインデックス張り替えちゃって下さい。

投稿者(author)を非表示に

各記事やページの下に出力される投稿者(by ~)を非表示にします。やり方は3通りあります。

0. プラグインをインストール

Show Hide Author

1. スタイルシートで隠す。

style.css(子テーマ)へ追加して下さい。

.single-author .entry-meta .by-author {
    display: none;
}

2. functions.phpを編集

functions.php(子テーマ)へ以下をそのまま追加して下さい。"<span> by %4$s</span>."を消します。

function twentytwelve_entry_meta() {
    // Translators: used between list items, there is a space after the comma.
    $categories_list = get_the_category_list( __( ', ', 'tt_child' ) );

    // Translators: used between list items, there is a space after the comma.
    $tag_list = get_the_tag_list( '', __( ', ', 'tt_child' ) );

    $date = sprintf( '<a href="%1$s" title="%2$s" rel="bookmark"><time class="entry-date" datetime="%3$s">%4$s</time></a>',
        esc_url( get_permalink() ),
        esc_attr( get_the_time() ),
        esc_attr( get_the_date( 'c' ) ),
        esc_html( get_the_date() )
    );
/* authorは不要なのでコメントアウトする。
    $author = sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s" title="%2$s" rel="author">%3$s</a></span>',
        esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ),
        esc_attr( sprintf( __( 'View all posts by %s', 'tt_child' ), get_the_author() ) ),
        get_the_author()
    );
ここまで */
/*  以下3つの$utility_textを書き換えて下さい。 */
    // Translators: 1 is category, 2 is tag, 3 is the date and 4 is the author's name.
    if ( $tag_list ) {
//      $utility_text = __( 'This entry was posted in %1$s and tagged %2$s on %3$s<span class="by-author"> by %4$s</span>.', 'twentytwelve' );
        $utility_text = __( 'This entry was posted in %1$s and tagged %2$s on %3$s', 'tt_child' );
    } elseif ( $categories_list ) {
//      $utility_text = __( 'This entry was posted in %1$s on %3$s<span class="by-author"> by %4$s</span>.', 'twentytwelve' );
        $utility_text = __( 'This entry was posted in %1$s on %3$s', 'tt_child' );
    } else {
//      $utility_text = __( 'This entry was posted on %3$s<span class="by-author"> by %4$s</span>.', 'twentytwelve' );
        $utility_text = __( 'This entry was posted on %3$s', 'tt_child' );
    }

    printf(
        $utility_text,
        $categories_list,
        $tag_list,
        $date,
        $author
    );
}
  • このエントリーをはてなブックマークに追加

関連記事

Twenty Fourteenカスタマイズ用プラグインと派生テーマ

WordPressの現在のデフォルトテーマ「Twenty Fourteen」のカスタマイズに便利なプラグインと、「Twenty Fourteen」をもとに作成されたテーマのまとめです。 カスタマ

no image

スライダー・ギャラリー プラグイン

WordPressにギャラリーが実装できるプラグインをまとめてみました。 順番はオススメ順です。 Simple Responsive Slider #ショートコード #テンプレート #ウ

Twenty Fourteen "コメントをどうぞ"の非表示と変更方法

Twenty Fourteenでは、デフォルトで投稿ページと各アーカイブページの各投稿のメタ情報欄に「コメントをどうぞ」というコメントフォームへのリンクが設置されます。 それぞれ、コメントが0件の場

新年早々やらかした

あけましておめでとうございます。 タイトルどおり、新年早々やらかしてしまいましたのでご報告まで。どうやらかしたかというと、確認用サイトとこのブログを間違えてしまいWordpress 3.5にアップグ

Twenty Fourteen カスタマイズ

「Twenty Fourteen」はWordPress 3.8のデフォルトテーマです。TwentyThirteenから彩りもガラッとかわってますね。個人的には、すごく好きなデザイン。 Twent

Twenty Eleven カスタマイズ

目次 author-info 消す 作成者(投稿者)を消す 投稿者情報を表示しない proudly powered by wordpressのリンクをコピーライトに変更

テーマ 「Responsive」 カスタマイズ

デモ | ダウンロード 目次 投稿日 非表示 作成者 非表示 "Responsive Theme powered by WordPress" 削除 投稿日 非表示 オリ

Twenty Thirteen カスタマイズ

WordPress 3.6のデフォルトテーマである「Twenty thirteen」のカスタマイズをまとめて投稿します。 Twenty thirteenのカスタマイズネタがあまりないです。(それだけ

Twenty Fourteen 「投稿日」や"先頭固定表示"を非表示

日付を表示する部分は、全てtwentyfourteen_posted_onに集約されています。該当部分をコメントアウトしたかたちで子テーマのfunctions.phpに追加して下さい。 「投稿日

テーマ ブックマーク 2013

2012 フリーテーマ トップ 20 Top 20 Free WordPress Themes of 2012 http://ow.ly/wMGjZ ハイクオリティフリーテーマ 3月 20 Top

Comment

  1. 記事参考になりました。ありがとうございます。
    日付をcssで非表示にする方法はないのでしょうか。
    素人なもので、上記だとどこを削除していいかわからなかったです。。

    あともし良ければ、記事したにある「編集」の消し方も教えていただけるとありがたいです。

    • コメントいただきありがとうございます。
      以下を子テーマのstyle.cssへ追加すると[投稿日]自体は非表示にできます。

      .entry-date {
          display: none;
      }
      

      ですが、「投稿日:」というテキスト自体は残ってしまいます。これは本文に記載したプラグインを導入した際も同様でした。

      (2)の方法についてですが、子テーマフォルダ内のfunctions.phpにそのまま追加すれば、適用されます。
      1点かなり大事なものが抜けていましたので新規に投稿しました。
      これだけだと、翻訳されない状態で表示されてしまいますので、変更部分を翻訳ファイルに登録する必要があります。(やること増えてすいません。。)

    • 内容を一部修正しました。
      投稿日を非表示にするプラグインですが、”WP Post Date Remover”ではなく”WP Date Remover”をインストールすると、「投稿日:」という文字も消してくれるようです。区切り文字「|」が重なってしまうのはしょうがないですが。

    • kwski様
      ご返信くださってありがとうございます。
      WP Date Removerを使いましたが、投稿日はやはり残ってしまうのですね。
      投稿日を消すにはfunctionsをいじらないとだめなようですが、functionsの子テーマを作成するのが私には難しいので、やはりあきらめるしかないんでしょうかね。。(CSSの子テーマは作成できましたが。。)
      ただ、丁寧に返信ありがとうございます。
      今後も参考にさせていただきます。

    • 返信ありがとうございます。
      確かにおっしゃるとおり、「投稿日:」は残ってしまいますね。確認した際にごっちゃになっていたようです。

      functionsの子テーマですが、子テーマフォルダに空ファイルのfunciotns.phpを作成してご自身でカスタマイズしたい部分だけを追記していくかたちになります。
      (他のテンプレートファイルなどと違い、そのまま子テーマフォルダにコピーすると画面が真っ白になってしまいます。)
      今回の件ですと、空のfunctions.phpに記事内のものをコピーしてしまえばいいです。ですが、ここに書きましたが変更したものを翻訳ファイルに対応させる必要がでてきます。
      翻訳ファイルの書き換えを回避する手段としては、邪道かもしれませんが以下のように日本語を直書きしてしまう方法があります。(例です。記事内のコードの22~31行目を以下に置き換えるかたちになります)

      if ( $tag_list ) {              // 投稿にカテゴリとタグが指定されている場合の出力
          $utility_text = __( 'カテゴリ: %1$s | タグ: %2$s <span class="by-author"> 投稿者: %4$s</span>', 'twentytwelve' );
      } elseif ( $categories_list ) { // 投稿にカテゴリとタグが指定されている場合の出力
          $utility_text = __( 'カテゴリ: %1$s <span class="by-author"> 投稿者: %4$s</span>', 'twentytwelve' );
      } else {                        // その他の場合の出力
          $utility_text = __( '<span class="by-author"> 投稿者: %4$s</span>', 'twentytwelve' );
      }
      

ホームページを作ってみたので紹介してみる。 | であきゅん.com へ返信する コメントをキャンセル

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

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

    PAGE TOP ↑