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
    );
}
  • このエントリーをはてなブックマークに追加

関連記事

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

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

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

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

ナビゲーションメニューに検索フォームを追加

メニュー内に検索フォームを追加したいという問い合わせをいただいたので試してみました。 メニューのつくられかた まずは、WordPressでメニューがつくられる手順を説明します。 箱をつく

ウィジェット関連のカスタマイズ・プラグイン

リンクマネージャー WordPress 3.5バージョンアップ以降にリンクマネージャーを追加するには以下のフィルタを設定もしくはプラグインをインストールして下さい。 プラグイン Link M

サイトのキャプチャをショートコードで生成してくれる「Browser Shots」

外部のサイトを紹介する際にそのサイトのキャプチャが添えられているとイメージがつかみやすくなりクリックのモチベーションが上がるような気がします。 今回は、ショートコード一行でサイトのスクリーンショット

no image

ソーシャルボタン設置 プラグイン

各種メジャーなソーシャルメディアボタンを設置できるプラグイン WP Social Bookmarking Light 国産プラグイン。国産ゆえ、はてなボタンの設置も可能 ダウンロード Twe

no image

「最近の投稿」ウィジェット カスタマイズ

目次 ウィジェットを削除 標準の設定 特定のカテゴリーに属する投稿を除外 カスタマイズ プラグイン 「最近の投稿」ウィジェットを削除 「最近の投稿」ウィジェット

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

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

Twenty Fifteen テーマ用フォント "Noto" / "Inconsolata"の使用を止

TwentyFifteenでは、テーマ用のフォントとして「Noto」と「Inconsolata」というフォントをGoogleフォントから引っ張ってきて使用されるようです。 ちなみにどのようなフォント

no image

Pocketボタンの設置

日本のブログでは、4大SNS(Twitter, はてな, Facebook, Google+)に加えて最近では、Pocket(以前は、Read it later)もよく見かけますよね。追加してみました

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' );
      }
      

Message

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

*

PAGE TOP ↑