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 Ten カスタマイズ

Twenty Tenのカスタマイズについてのまとめです。 目次 コンテンツナビゲーション 非表示 「投稿日」を非表示 「作成者(投稿者)」を非表示 "コメントをどうぞ"("leave a

開発やテストに便利なプラグイン

開発やカスタマイズに使えそうなプラグインを集めてみました。 テーマのカスタマイズには、使用中のテンプレートファイルなどを表示してくれると便利ですね。個人的には、テーマ開発の際に、実行しているSQ

「カレンダー」ウィジェット カスタマイズ・プラグイン

目次 カレンダー移動をajax遷移させるようにする 営業日・休業日を色分けして表示 ページやウィジェットにgoogleカレンダーを追加 カレンダーウィジェットをajax遷移させるよ

Twenty Thirteen カスタマイズ

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

Google Code Prettifyを使用してソースコードを表示をしてくれる「Prettify Code Syntax」

Prettify Code Syntaxは、WordPressでGoogle Code Prettifyを使用してソースコードを表示してくれるプラグインです。 プラグインダウンロード Google

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

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

jQueryをCDNから読み込む

WordPressではデフォルトでjQueryライブラリが同梱されています。この記事では、それをやめて、CDNから読み込み、使用する方法を解説します。 WordPress 3.6 3.9 4.0

Twenty Thirteen ナビゲーションメニューを固定

ナビゲーションメニューを固定にしてみました。下方にスクロールしても最上部に固定されるやつです。 スクリプト 以下のjsファイルを用意して下さい。 nav要素のidは、ソースもしくはheade

「All in One SEO Pack」を代替するための準備

「All in One SEO Pack」は、SEO対策に必要な基本的な設定を行ってくれるプラグインです。とある事情で、無効化することになったので代替を行いました。特に問題があるわけではなく、特殊なこ

「Google Analytics for WordPress」投稿URLにやたら長いパラメータがついてしまう

Google 検索結果をみていたら、Wordpressの投稿のURLが実際のものより異様に長くなっているので何かなと思って調査してみました。 このような感じで http://kwski.net/ca

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 ↑