WordPressでゲスト投稿者の名前をカスタムフィールドで書き換える方法

ゲスト投稿は、WordPressサイトを新鮮に保つための素晴らしい方法です。新しい読者を引き付けるための良い方法でもあります。それが、私たちが自身のブログでWordPressの専門家からのゲスト投稿を公開する主な理由の1つです。

しかし、サイトに寄稿するすべてのゲスト著者のために新しいユーザーアカウントを作成したくない場合があります。

幸いなことに、もっと簡単な方法があります!

WordPressのカスタムフィールドを使用して、ゲスト著者の名前を書き換えることができます。これにより、ダッシュボードを散らかす余分なユーザーアカウントが不要になります。

この記事では、ゲスト著者名をカスタムフィールドで簡単に設定する方法を順を追って説明します。

WordPressでゲスト投稿者の名前を書き換える方法

WordPressでゲスト投稿者の名前をカスタムフィールドで書き換える方法

場合によっては、ゲスト投稿者がソーシャルメディアや著者プロフィールに使用する名前が、WordPressユーザーアカウントに使用する名前と同じではないことがあります。これはニックネーム、ペンネーム、または単に名前の別のバリエーションである可能性があります。

カスタムフィールドを使用することで、ゲスト著者の希望する名前をブログ投稿に表示でき、既存のオンラインプレゼンスとの一貫性を確保できます。

さらに、カスタムフィールドを使用すると、サイトのユーザーリストをきれいに保つことができます。一度きりのゲスト著者による、非アクティブなWordPressユーザーアカウントがたくさん作成されるのを防ぐことができます。これにより、サイトの管理が容易になり、通常の寄稿者に集中できます。

ゲスト投稿プロセスを合理化し、WordPressサイトをスムーズに実行する準備はできましたか?この記事で共有する2つの方法の簡単な概要を以下に示します。

さあ、始めましょう!

方法1:WordPressプラグインでゲスト投稿者情報を追加する

この方法では、WordPressプラグインを使用します。プラグインを使用するとプロセスがはるかに簡単になり、初心者から経験豊富なユーザーまで、すべてのユーザーにこのアプローチをお勧めします。

まず、Guest Author プラグインをインストールして有効化しましょう。ヘルプが必要な場合は、WordPress プラグインのインストール方法に関するステップバイステップガイドをご覧ください。

有効化すると、ゲスト著者にクレジットを付与したいブログ投稿を編集する必要があります。ブロックエディターでは、右側の投稿パネルの下に「著者」という新しいタブが表示されます。

ここから、「ゲスト」タブに切り替えて、投稿者の名前、ウェブサイト、簡単なプロフィール説明、写真などのゲスト投稿者の情報を入力できます。

ゲスト投稿者の情報を追加する

必要な情報を入力したら、投稿を保存または公開し、ブラウザでプレビューできます。

デモウェブサイトではこのように表示されました。

ブログ投稿にゲスト著者が追加されました

方法2:カスタムフィールドを使用してWordPressにゲスト著者を登録する

この方法では、WordPressテーマファイルにコードを追加する必要があります。以前にこれを実行したことがない場合は、WordPressにカスタムコードスニペットを追加する方法に関するガイドをご覧ください。

WordPressのカスタムフィールドという機能を使用します。カスタムフィールドを使用すると、コンテンツにカスタムメタデータを追加でき、それをWordPressテーマにコードを追加して表示できます。

カスタムフィールドの詳細については、初心者向けWordPressカスタムフィールドに関する記事をご覧ください。

このチュートリアルでは、まずゲスト著者の名前をWordPressのカスタムフィールドとして保存します。その後、コードスニペットを使用して、カスタムメタデータとして利用可能なゲスト著者の名前で著者の名前を置き換えます。

まず、ゲスト著者の名前を表示したいブログ投稿を編集する必要があります。

ブロックエディタでは、画面右上にある3つの点のメニューをクリックし、「設定」を選択することから始めることができます。

設定

これにより、ブロックエディター設定のポップアップが表示されます。

ここから、「一般」タブを下にスクロールし、「詳細設定」セクションの「カスタムフィールド」オプションをオンにする必要があります。

次に、「表示&ページ再読み込み」ボタンをクリックしてカスタムフィールドを有効にします。

カスタムフィールドを有効にするための「表示&ページ再読み込み」ボタン

注意: この手順は、アクティブなテーマによって若干異なる場合があります。一般的に、「カスタムフィールド」オプションを有効にすれば、トグルがどこにあっても問題ありません。

設定が完了したら、「設定」ポップアップを閉じることができます。

エディタの下に新しい「カスタムフィールド」ボックスが表示されます。

新しいカスタムフィールドを追加

次に、「新規入力」リンクをクリックして、ゲスト著者の名前のカスタムフィールドを作成する必要があります。

まず、カスタムフィールドの名前として「guest-author」を入力します。次に、「値」フィールドに、ゲスト著者の名前を単純に入力します。

保存するには、「カスタムフィールドを追加」ボタンをクリックしてください。

ゲスト投稿者のカスタムフィールド

その後、ブログ投稿を更新または保存することを忘れないでください。

ゲスト投稿者の情報をカスタムフィールドとして保存したので、次のステップはそれをウェブサイトに表示することです。

通常、チュートリアルでは、特定のPHPコードスニペットをテーマのfunctions.phpファイルまたはサイト固有のプラグインにコピー&ペーストするように指示されます。しかし、これはリスクが高く、サイトが壊れる可能性があるため、お勧めしません。

これをより簡単に行う方法は、WPCode を使用することです。これは、初心者でもカスタムコードを WordPress ウェブサイトに追加することを簡単かつ安全にするように設計されたプラグインです。

まず、これをインストールしましょう。スニペットを追加するために必要なものがすべて含まれているため、無料のWPCodeバージョンをスターターとして使用できます。

ヘルプが必要な場合は、WordPressプラグインのインストール方法に関するガイドをご覧ください。

インストールが完了したら、コードスニペット » + スニペットを追加 » カスタムスニペットを追加に移動できます。

WPCodeにカスタムスニペットボタンを追加

次に、カスタムスニペットの名前を付けます。これにより、追加したスニペットのリストで簡単に見分けられるようになります。

「非アクティブ」ボタンを「アクティブ」に切り替え、「PHPスニペット」をドロップダウンから選択してください。

その後、以下のコードをコピーして「コードプレビュー」フィールドに貼り付けることができます。

add_filter( 'the_author', 'guest_author_name' );
add_filter( 'get_the_author_display_name', 'guest_author_name' );
 
function guest_author_name( $name ) {
global $post;
 
$author = get_post_meta( $post->ID, 'guest-author', true );
 
if ( $author )
$name = $author;
 
return $name;
}

このコードは、guest-authorカスタムフィールドが追加されているかどうかを確認し、投稿者名をguest-authorカスタムフィールドの値に置き換えるだけです。

WPCode のエディターでは、このようになる可能性があります:

WPCodeを使用してゲスト著者のPHPスニペットを追加する

すべての設定が完了したら、「スニペットを保存」ボタンをクリックして変更を保存することを忘れないでください。

さて、先ほど編集したゲスト投稿にアクセスすると、コードが実際に機能しているのがわかります。

著者名がゲスト著者名に置き換えられました

それで終わりです!

この記事が、WordPressで著者の名前を書き換えてゲスト著者の名前に置き換えるのに役立ったことを願っています。次に、WordPressの投稿に複数の著者を追加する方法WordPressでユーザーロールに権限を追加または削除する方法に関するガイドも参照してください。

この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterFacebookでもフォローできます。

開示:当社のコンテンツは読者によってサポートされています。これは、当社のリンクの一部をクリックすると、当社が手数料を得る可能性があることを意味します。WPBeginnerがどのように資金提供されているか、それがなぜ重要か、そしてどのように私たちをサポートできるかについては、こちらをご覧ください。当社の編集プロセスはこちらです。

究極のWordPressツールキット

無料のツールキットにアクセスしましょう - すべてのプロフェッショナルが持つべきWordPress関連の製品とリソースのコレクションです!

読者とのインタラクション

93 CommentsLeave a Reply

    • AMPは独自のカスタマイズを追加するため、現時点ではAMPに関する具体的な推奨事項はありません。

      管理者

  1. 拝啓、
    著者名の書き換えと同様に、著者プロフィールや著者情報を書き換えることは可能でしょうか。よろしくお願いいたします。

  2. これは私には機能していないようです。コードを追加し、管理画面で更新された著者名を確認しましたが、プレビューでは、ゲスト著者の名前が記事の署名に表示されません(私の名前が表示されたままです)。

    さらに奇妙なのは、バイラインがゲスト著者のURLに正しくリンクしていることです。なぜゲスト著者の名前がバイラインに表示されないのでしょうか?

  3. こんにちは。
    コードを試しましたが、投稿詳細ページでは正常に動作しています。しかし、静的なホームページがあり、最新の投稿を表示するセクションがあるのですが、そのセクションでは著者名が影響を受けていません。つまり、ゲスト著者の名前が表示されるのではなく、実際の著者名が表示されています。

    ホームページでも動作するように、他に何かする必要がありますか?

    もう一つ問題があります—>

    投稿詳細ページでは著者の名前がゲスト著者の名前に変更されますが、同じページでサイドバーに表示されている投稿があります。ゲスト著者の名前を変更すると、サイドバーの投稿の著者の名前も変更されますか?

    なぜそれが起こるのですか??

  4. これは素晴らしい、ありがとう!ただし、1つの部分が機能しない点があります。投稿の上部には、カスタムフィールドで入力した著者が記載されています。すべて順調です。これは通常、その著者のすべての投稿のページにリンクされます。これらの投稿のために、ゲスト著者というWordPressアカウントを作成しました。そのため、これらの投稿の著者フィールドでそれを選択します。これは、カスタムフィールドにゲスト著者が含まれるすべての投稿が、そのゲスト著者ページに収集されることを意味し、実際そうなっています。問題は、それが「ゲスト著者」ではなく、最後に使用した「カスタムフィールド著者」のいずれかにそのページをタイトル付けしてしまうことです。これを解決できますか?

  5. こんにちは、
    探していたのはそれです!素晴らしい。
    でも、なぜフックが2つ必要なのですか?
    よろしく、
    デニス

  6. 私のウェブサイトでは、著者の名前は関係ありません。そのため、著者の名前を非表示にしても、訪問者のエンゲージメントを損なうことはありませんでした。また、Yoastプラグインの設定で著者をnoindexにしています。

    著者名は記事のSEOにとって重要ですか?ウェブサイトのテーマ設定で著者名を非表示にすることにしました。これは正しい判断ですか?

    記事の著者の名前はGoogleにとって重要ですか?

  7. Hello,

    Its fulfill my guest author’s needs. Thank You so much :)

    ゲスト作成者の投稿を1ページにソートすることは可能ですか?たとえば、ゲスト作成者の名前をクリックすると、そのゲスト作成者が公開したすべての投稿が表示されるようにしたいのですが?

    ありがとう

  8. このコードを自分で書きたいと思っていました。まずオンラインで確認しました…あなたのシンプルでクリーンなコードを見つけました。いつものように、皆さんはそれをとても簡単にします!ありがとうございます!

  9. ゲスト著者の投稿にリンクするのを手伝ってもらえますか?言い換えれば、カスタムフィールドアーカイブページへのリンクを作成するために何時間も費やしましたか?上記のチュートリアルを正常に実装した後、投稿に以下を追加しました。これらの著者ゲストの投稿すべてをアーカイブページにリンクしたいと思っていました。しかし、それはデフォルトでウェブサイトのメインの著者ページに移動します:

    の他の投稿

      • 返信ありがとうございます。うまくいきました。しかし、何十もの著者プロフィールを作成するのは避けたいと思っていました。タグ付けでゲスト著者を達成することもできましたが、それはタグを散らかします。

      • このヒントをありがとうございます。皆さんは最高です。管理画面にゲスト著者を登録し、投稿ループのコードにカスタムコードブロックを追加して、その著者を一覧表示し、ユーザーがクリックするとその著者の過去の投稿へのリンクが表示されるようにしました。:

        <span class="vw-post-author" >
        <a class="author-name" href="” title=” ” rel=”author” >
        著者についてもっと知る:

        例にカスタムフィールドコードを実装せずに投稿すると、ゲスト著者が表示されず、投稿したのは私(管理者)として表示されてしまうという問題があります。

        上記のカスタムフィールドコードは機能しますが、ゲスト著者が表示されないため、例のコードと同様の方法で、著者の過去の投稿すべてにリンクする方法を教えていただけますか、またはヒントをいただけますか?

        • ポストエディタ画面で、画面右上にある「画面表示オプション」ボタンをクリックします。これにより、チェックボックスがたくさん表示されたメニューが表示されます。投稿者(Author)の横のボックスにチェックが入っていることを確認する必要があります。次に下にスクロールすると、ポストエディタの下に投稿者(Author)ボックスが表示されます。これを使用して、投稿者を変更できます。

  10. コメンターの多くが私と同じ質問をしています。フロントエンドで投稿著者の名前のリンクを解除する方法はありますか?言い換えれば、コードは正しく機能します。カスタムフィールドに入力した名前が表示されますが、その名前をクリック可能にしたくありません。プレーンテキストにしたいだけです。著者の名前のリンクを解除するにはどうすればよいですか?

  11. ゲストの説明を追加するには、私の完全な実装を以下に示します。

    // Change Guest Author Name, Link and Description
    add_filter( 'get_the_author_user_url', 'guest_author_url' ); 
    add_filter( 'the_author', 'guest_author_name' ); 
    
    add_filter( 'get_the_author_description', 'guest_author_description' ); 
    
    function guest_author_url($url) {
      global $post;
      $guest_url = get_post_meta( $post-&gt;ID, 'guest-url', true );
      if ( filter_var($guest_url, FILTER_VALIDATE_URL) ) {
        return $guest_url;
      } elseif ( get_post_meta( $post-&gt;ID, 'guest-author', true ) ) {
        return '';
      }
      return $url;
    }
    
    function guest_author_name($name) {
      global $post;
      $guest_url = get_post_meta( $post-&gt;ID, 'guest-url', true );
      $guest_name = get_post_meta( $post-&gt;ID, 'guest-author', true );
      if ( $guest_name &amp;&amp; filter_var($guest_url, FILTER_VALIDATE_URL) ) {
        return '<a href="' . esc_url( $guest_url ) . '" rel="nofollow">' . $guest_name . '</a>';
      } elseif( $guest_name ) {
        return '<a href="" rel="nofollow">' . $guest_name . '</a>';
      }
      return $name;
    }
    
    function guest_author_description($description) {
      global $post;
      $guest_description = get_post_meta( $post-&gt;ID, 'guest-description', true );
      if ( $guest_description ) return $guest_description;
      elseif ( get_post_meta( $post-&gt;ID, 'guest-author', true ) ) {
        return '';
      }
      return $description;
    }
    
    • マテウスさん、こんにちは。
      コードを共有していただきありがとうございます。あなたの投稿したコードを私のサイトに実装しようとしたところ、「予期しない「&」があります」というエラーが表示され、サイトが機能しなくなりました。私はPHP初心者で、「&」という文字がこのように使われているのを見たことがありません。コピー&ペーストの過程で文字が変更されたのでしょうか?

      どうやってこれを機能させたのか教えていただけますか?

      よろしくお願いいたします。
      Neka

    • こんにちは、Matheusさん。
      あなたが投稿したコードを私のサイトに実装しようとしたところ、「予期しない「&」があります」というエラーが表示され、サイトが動作しなくなりました。私はPHPに非常に慣れておらず、「&」という文字がこのように使われているのを見たことがありません。コピー&ペーストの過程で文字が変更されたのでしょうか?何かアイデアはありますか?

      よろしくお願いいたします。
      Neka

        • おっと、入力した内容が変わってしまいました。間にスペースを入れます:

          「& g t ;」を「>」に
          「& a m p ;」を「&」に置き換えてください。

    • このコードを実装するにはどうすればよいですか?動作しません…元の投稿のコードは動作しますが。

  12. 素晴らしい解決策、ありがとうございます!しかし、「新しい」著者リンクをクリックすると、実際にログインしている人(管理者であり、ゲスト著者ではない)の記事がすべて表示されるページが表示されます。それに対する解決策もありますか?

  13. こんにちは!これは素晴らしいです、コードをありがとうございます – 何か間違ったことをしたと思いますか??それとも手伝ってもらえますか – コードを入れました – カスタムフィールドを追加しました…エントリを1つ作成しました…すべて順調です…

    しかし今…管理者の著者ページにアクセスすると、その記事のゲスト著者の名前が一番上に表示されるのですが?!

    例えば、デフォルトの投稿者名が「The Administrator」で、その投稿の1つで上記の魔法を使って名前を「Some Guest」に変更したとします。他の投稿で「by: the administrator」と表示されている投稿をクリックすると、その投稿者のページに移動しますが、そのページのトップには、別の投稿から来たにもかかわらず、「About Some Guest」と表示されます。

    any ideas?
    :-)

  14. ここで何か間違っているようです…
    WP 4.4を使用しています。
    wp-includesディレクトリからfunctions.phpにコードを貼り付けると…そしてWPで「すべての投稿」を開くと、何も表示されず、何もなくなってしまいます。コードを削除してfunctions.phpを正しいディレクトリにアップロードすると…すべて元に戻ります。それで、何が間違っているのでしょうか?

    functions.php の特定の場所ですか、それとも WP が最後のアップデートですべて変更されたためですか…

    ありがとう

    • まず、私も同じことがありました。コードを再確認し、不正なシングルクォートがないか、またはカンマ、セミコロンが抜けていないか確認してください。

      保存をクリックしたときに、誤って s を追加してしまいました

  15. こんにちは、残念ながら私のWordPressテーマはTimberをテーマ設定に使用しています。そして、彼らはコードを変更するためにこのCodexに私を案内しました。これを理解するのを手伝ってもらえますか?私はコーディング初心者ですが、Timberで動作するようにすべてをわずかに変更するだけでよいと感じていますが、自分でやるほど自信がありません。

      • すみません、私の説明が分かりにくかったようです(笑)。missoulacurrent.com という私のウェブサイトでこれを使おうとしているのですが、うまくいきません。テーマが「the_author」や
        「get_the_author_display_name」フックを使用していないことが原因だと分かりました。上記のリンクを参照して、Timberのドキュメントを見ながら色々試してみましたが、まだうまくいきません。どのフックを使えば良いか、何かアドバイスをいただけますでしょうか?

  16. これは素晴らしいですが、現在の投稿の著者の投稿リストを表示しようとしています。何かアイデアはありますか?

  17. これはうまくいきます!質問ですが…ゲスト著者の投稿をブログに投稿するのを早める方法はありますか?

    ありがとうございます ~ ジョン

  18. これは本当に素晴らしいです。クライアントのサイトで100%機能します。

  19. こんにちは

    作家紹介のカスタムフィールドを追加するにはどうすればよいですか? [ the_author_meta(‘description’)] …教えてください。

  20. まさに私が探していたものです:the_authorにフィルターを使用する例です。ありがとうございます!

  21. まさに私が求めているものですが、ゲスト著者の名前が私のプロフィールにリンクされていますか?これを無効にしたい人はいますか?

    • 残念ながら、その方法はありません。投稿はあなたのプロフィールに関連付けられます。最善の方法は、ゲストブロガーという名前の新しいプロフィールを作成することです。

      管理者

    • 試す:

      if( !is_admin() ) { add_filter( ‘author_link’, ‘my_author_url’ ); } function my_author_url( $url ) {

      global $post;

      if( get_post_meta($post->ID, ‘guest-author’, true) ) {
      if( get_post_meta($post->ID, ‘guest_author_url’, true) ) {
      return esc_url( get_post_meta($post->ID, ‘guest_author_url’, true) );
      } else {
      return ‘#’;
      }
      }

      return $url;
      }
      // ゲストブロガーのために、キー「guest_author_url」を持つカスタムフィールドを追加するだけです

    • あなたはこれをBuddyPressで使用しようとしていますが、このコードはWordPress用です。BPのデフォルトコードにはあまり詳しくないため、それについてはお手伝いできません。しかし、functions.phpファイル内のコードは、次のフックでのみ機能します。

      著者
      著者の表示名を取得

      コードを見ると、次を使用しているようです: bp_core_get_userlink

      そこに問題があるのかもしれません。

      管理者

  22. これを機能させるのに苦労しています。上記のコードをfunctions.phpファイルに追加し、カスタムフィールドguest-authorを追加しましたが、投稿を公開しても著者は変更されません。まだ私の名前が表示されます。

    何か間違っていると思いますが、何が間違っているのか分かりません。誰か何かアイデアはありますか?

    ありがとう

  23. ゲストのアーカイブにゲスト自身の投稿(2つか3つある場合)ではなく、元の投稿者の投稿が表示されるという問題を解決するために、投稿者のバイラインがアーカイブページにリンクしないようにすればよいと、さらに上にいる誰かに答えているのを見ました。しかし、その方法を説明していませんでした。PHPにはあまり詳しくないのですが、投稿者のアーカイブにリンクしないようにするために、しばらくこのコードをいじってみましたが、うまくいきませんでした。投稿者名だけを表示してリンクをなくすには、何を削除/追加すればよいですか?
    ありがとうございます!

  24. 素晴らしい記事です。著者フィールドを使用して、アバター、名前、著者の説明を表示しています。これをカスタマイズして、Gravatarと著者説明も書き換える簡単な方法はありますか?よろしくお願いします。

  25. functions.phpファイルのどこにこのコードを貼り付けるのか分かれば、とても助かります…機能させるために <?php> タグで囲む必要がありますか? <?php> タグを試して、「/** * 現在の投稿日時と著者のメタ情報を表示します。 * * @since Twenty Ten 1.0 */」の下にfunctions.phpファイルに貼り付けましたが、どちらもWordPressで編集ページを更新しても結果は得られませんでした…ゲスト著者はページ上のどこに表示されるはずですか?

  26. WordPress 3.2.1で、twentytenをベースにしたカスタムテンプレートでこれをテストしましたが、問題なく動作しました!

    貢献ありがとうございます!

  27. @wpbeginner :

    こんにちは、

    wpバージョン3.2.1と互換性がありますか?コードを私のthesis 1.8.2に追加しましたが、機能しません。カスタムフィールドがスクリーンオプションで選択されているにもかかわらず、新しい投稿の下書きでフィールドが表示されません。

  28. こんにちは、

    wpバージョン3.2.1と互換性がありますか?私のテーマ1.8.2にコードを追加しましたが、機能しません。カスタムフィールドが画面オプションで選択されているにもかかわらず、新しい投稿の下書きに新しいフィールドが表示されません。

  29. @MilindGupta 投稿の書き込みパネルで…右上パネルの「画面オプション」を見てください…次にカスタムフィールドにチェックを入れてください。

  30. !を上に配置してみましたが、うまくいきました。エラーはありませんでしたが、カスタムフィールドメニューはどこにありますか!?

    名前やその他の情報をどこに入力しますか?

    返信をお願いします、かなり緊急です!

  31. RSSフィードにゲスト作成者のカスタムフィールドを表示するにはどうすればよいですか?投稿を作成して公開したため、現在は作成者として表示されています。ウェブサイトはゲスト作成者のおかげで正しい作成者を表示していますが、RSSではまだ私が表示されます。それを変更する方法はありますか?

  32. 何か非常に明白なことを見落としているようです。

    カスタムフィールドの名前は guest-author である必要があります

    ゲスト作成者のユーザー名はどのように命名すればよいですか? guest_author_nameですか、それとも別の名前ですか?(別の名前だと思います。うまくいかないので)
    (新しいウェブサイトを作成中で、今のところ http://new.tenderfeelings.net でご覧いただけます)

  33. 痛っ…。解決策を見つけました。
    注:WordPress 3.1では、コアチームは書き込みパネルをよりきれいにしたいと考えたため、カスタムフィールドの表示ボタンのチェックを外しました。それらが見えない場合は、画面オプションタブ(右上隅)をクリックして、カスタムフィールドにチェックを入れてください。

    ありがとう

  34. Great function!! Thanks for sharing :)

    皆さん、一つ教えていただけますか?ブログに2人の「公式」投稿者がいて、ゲスト投稿者(新しいユーザーではなく、カスタムフィールドに名前を入れるだけ)を追加しようとしています。問題は、ゲスト投稿者のリンクが公式投稿者のURLを返してしまい、結果としてその投稿が表示されてしまうことです。ゲスト投稿者の投稿をすべて表示させたいのですが、どうすれば実現できますか?(分かりやすく説明できたことを願っています!)

    ありがとうございます!!!!!!

      • 残念ながら、上記のフィルターを適用すると、そのタイトルにはカスタムゲスト著者の名前が表示されますが、すべてのゲスト著者からのすべての投稿がアーカイブリストに表示されます。つまり、アーカイブページのタイトルは、「ゲスト著者のすべての投稿を表示」ではなく、「(ゲスト著者の名前)のすべての投稿を表示」と表示されます。

        • @SRoberts、実際にはそうではないようです。私もこの便利な機能を実装しましたが、ゲストアカウントも作成しています。ゲストの投稿で、ゲスト著者のカスタムフィールドにRumplestiltskinという値を設定しました。

          この投稿の投稿者は現在「Rumplestiltskin」として表示されていますが、投稿者リンクは(私の場合)/author/guestにリンクしています。

          それをクリックすると、ページ上部が「Rumplestiltskin」ではなく「Guest」と表示されている投稿者アーカイブに移動します。うまく連携しているようです。

      • 著者投稿へのリンクとアバター(メール)を別のカスタムフィールドのリンクで上書きする方法はありますか?

  35. 素晴らしいスニペットですが、1つだけ欠点があります(修正していただけると嬉しいです)。スニペットは、カスタムフィールドとして定義した名前でゲスト投稿者のユーザーアカウントを置き換えますが、投稿内のその投稿者名をクリックすると、「/author/guestauthor」のようなURLにアクセスしますが、そのページの先頭に表示される名前は、そのユーザーアカウントの名前である「Guest Author」ではなく、投稿の1つに対してカスタムフィールドとして定義した名前になります。

    スニペットを(is_single)で単純にラップすれば、投稿を表示したときにのみ実行されると思っていましたが、まったく機能しませんでした。

    何かアイデアはありますか?

    Thanks :)

    • この方法の背後にある考え方は、ユーザーのために新しいプロフィールを作成したくないということです。ゲスト投稿者は一度きりの投稿者が多いためです。そのため、名前と投稿の最後に著者署名でクレジットするだけで済みます。彼らが通常の投稿者である場合、この方法はあなたには適していません。

      管理者

      • テンプレートでget_the_authorを使用して投稿の著者の名前を著者の投稿アーカイブにリンクしている場合、これは投稿の著者として登録されている著者にリンクするという懸念があると思います。

        このテクニックは、シングルオーサーブログを実行していてゲストオーサーを起用したい場合には理にかなっていますが、最初からマルチオーサーサイトの場合は、それほどうまく機能しません。

        そのアーカイブページで著者の名前が変わらないように修正する方法について、何か考えはありますか?

  36. 著者に関する説明のフィールドを含めることは可能でしょうか?すでにプラグイン(wp-gravatar)で投稿の最後に著者の説明が表示されるようになっています。しかし、毎回新しいアカウントを作成せずにゲスト著者の説明を投稿できるようにしたいのです。上記で説明された方法を組み合わせて、これを実現することは可能でしょうか?

    • はい、カスタムフィールド経由でゲスト投稿者の説明を行うことは可能です。カスタムフィールドがx個ある場合はカスタムフィールドのテキストを表示し、そうでない場合はwp-gravatarを表示するという条件付きステートメントを設定できます。

      管理者

      • カスタムフィールドの著者ハックがかなり役立ったので、この件に私も参加します…

        同じ方法(カスタムフィールド)を使用して、「著者について」ページも作成したいのですが。私もコーダーではありません。上記で使用されているコードと同様のコードを使用しますか?

        ありがとう!

        • どうすればよいかまだわかりません(基本的に、リキが尋ねたこととまったく同じことをしたいのです。コードを十数回いじりましたが、結果はありません。うーん。

    • 何がうまくいかないのですか?WPBeginnerサイトでこれを実行しており、問題なく動作しています。単純なカスタムフィールドを呼び出しているだけです。

      管理者

      • 私もこれを試しましたが、コードをincludes/functions.phpファイルの先頭に貼り付けました。無効なフィルターであるというPHPエラーが発生しました。これはWordPress 3.0で動作しますか?

        うまくいくといいのですが、JoomlaからWordPressにサイトを移行中で、これが唯一足りないものです。

  37. この投稿、本当にありがとうございます。まさに探していたものでした。問題をここに投稿し、あなたのコードを少し変更して修正しました。重ねて感謝します!

  38. この記事を本当にありがとうございます。ウェブサイトの様々なライターを整理しようとして狂いそうでしたが、これで簡単に著者名を追加できます。私はすべての要件にカスタムフィールドを使用しており、それが「the_author()」に影響を与え、著者名がまったく表示されなくなっていました。上記により、著者が表示され、執筆者が異なる著者を強調表示できるようになりました。

    長々とすみません!大変助かりました…ありがとうございます!
    ツイートもさせていただきますね!

  39. この提案を試してみたいのですが、初心者なので「functions.php」ファイルがどこにあるのか、そしてコードを正確にどこに挿入すればよいのかを知っておくと役立ちます。「テーマ関数」ファイル(括弧内に「functions.php」と表示されていました)を編集しようとしましたが、このファイルは編集できないという警告が表示されました。私が探しているファイルはサーバーにありますか?

    ありがとう、
    カール

  40. カスタムフィールドはあまり好きではありませんが、あなたのスニペットの背後にあるアイデアは気に入っています。
    実は、まさにこの問題(ゲスト著者ごとにユーザーを追加する)について、つい先日考えていたところでした。

返信する

コメントを残していただきありがとうございます。すべてのコメントは、当社のコメントポリシーに従ってモデレーションされますので、ご了承ください。メールアドレスは公開されません。名前フィールドにキーワードを使用しないでください。個人的で有意義な会話をしましょう。