公開したコンテンツはすべて、数ヶ月後、あるいは数年後であっても、発見されるチャンスがあるべきです。しかし、WordPressのアーカイブがサイドバーに隠された基本的なリストだけでは、訪問者が古い投稿を見つけて楽しむのが難しくなります。
アーカイブは、単なる時系列リスト以上のものになり得ます。
読者を関心のあるトピックに誘導したり、最も人気のあるコンテンツをアピールしたり、人々があなたのサイトをより長く探索するように促したりすることができます。
WPBeginnerには専用のアーカイブページがあるため、私たちは経験からこれを理解しています。アーカイブがコンテンツ発見にどれほど大きな違いをもたらすかを直接見てきました。
アーカイブをアップグレードする準備はできましたか?WordPressのアーカイブ表示を、技術的なスキルを必要としない簡単なテクニックでカスタマイズする方法をご紹介します。

WordPress アーカイブのサイドバー表示をカスタマイズする理由
WordPressのアーカイブは、投稿を日付順に自動的に整理し、訪問者が古いコンテンツを見つけやすくします。
多くのサイト所有者は、WordPressサイトにサイドバーを追加し、この領域にアーカイブウィジェットを含めて、過去の投稿にすばやくアクセスできるようにしています。
しかし、サイドバーに表示されるデフォルトのアーカイブは、特にコンテンツが豊富なサイトでは長すぎて使いにくいことがよくあります。月と年の基本的なリストは、すぐに圧倒的でユーザーにとって魅力のないものになってしまいます。
WordPressサイトのサイドバーアーカイブをカスタマイズすることで、アーカイブリストが長すぎて威圧的になるのを防ぐことができます。
よく設計されたアーカイブセクションは、ユーザーエクスペリエンスを向上させ、訪問者がより多くのコンテンツを探索するように促すこともできます。
これを踏まえて、WordPressのアーカイブの表示をサイドバーでカスタマイズする方法を見ていきましょう。
- オプション1:デフォルトのアーカイブブロックをカスタマイズする(プラグインなし)
- オプション2:コンパクトなアーカイブ表示を作成する
- オプション3:折りたたみ可能なメニューでアーカイブを表示する
- オプション4:表示するアーカイブ月の数を制限する
- オプション 5: 月別および年別アーカイブのドロップダウンメニューを表示する
- Option 6: Display Monthly Archives Arranged by Year
オプション1:デフォルトのアーカイブブロックをカスタマイズする(プラグインなし)
WordPressのデフォルトのアーカイブブロックまたはウィジェットには、アーカイブの外観をカスタマイズするオプションが実際に用意されています。
クラシックテーマを使用している場合、外観 » ウィジェットに移動してブロックベースのウィジェットエディターを開くと、これらの設定を確認できます。
次に、「+」ボタンをクリックして、WordPress のサイドバーに「アーカイブ」ブロックを追加します。

右側のブロック設定パネルには、アーカイブをドロップダウンメニューとして表示するオプション、アーカイブラベルを表示するオプション、および各期間に公開された投稿数を表示するオプションがあります。
アーカイブを年、月、週、または日で表示することもできます。

WordPressブログでアーカイブの見栄えに満足したら、「更新」をクリックできます。
カスタマイズしたWordPressのデフォルトのアーカイブがブログのサイドバーにどのように表示されるかは次のとおりです。

ブロックテーマを使用している場合、同じ「アーカイブ」ブロックを使用して、フルサイトエディターでサイドバーがあるテンプレートに追加できます。設定はまったく同じです。
WordPressのフルサイト編集に関する完全なガイドをご覧ください。詳細については、WordPressフルサイト編集に関する完全なガイドをお読みください。
これらのデフォルト設定は、基本的なブログには適しているかもしれません。しかし、管理するコンテンツが多い場合や、より多くのカスタマイズオプションが必要な場合には十分ではありません。
アーカイブの表示をカスタマイズする方法について、さらに詳しく知りたい場合は、読み進めてください。
オプション2:コンパクトなアーカイブ表示を作成する
アーカイブリストが長くなりすぎた場合は、より少ないスペースで投稿を表示するコンパクトなアーカイブを作成できます。
Compact Archivesプラグインをインストールしてアクティブ化する必要があります。このプラグインは当社が開発したもので、2,000人以上のユーザーに好評です。
その他のインストール手順については、WordPressプラグインのインストール方法に関するステップバイステップガイドをご覧ください。
プラグインが有効になったら、'WPBeginner's Compact Archives' ブロックを使用して、テーマのサイドバーにコンパクトアーカイブを追加できます。このブロックは、ブロックベースのウィジェットエディターとフルサイトエディターの両方で利用できます。

その後、コンパクトアーカイブの外観を変更できます。
例えば、月の最初のイニシャル、月の最初の文字、または月の番号を表示することを選択できます。

完了したら、「更新」または「保存」をクリックしてください。
プラグインの詳細については、WordPressでコンパクトなアーカイブを作成する方法のガイドをご覧ください。

オプション3:折りたたみ可能なメニューでアーカイブを表示する
長いアーカイブリストを処理する別の方法は、ブログ投稿を公開した年と月を折りたたみ可能なアウトラインで表示することです。
これを行うには、Collapsing Archives プラグインをインストールして有効化する必要があります。
プラグインがアクティブになったら、外観 » ウィジェットページにアクセスし、「折りたたみ式アーカイブ」ウィジェットをサイドバーに追加する必要があります。

ブロック設定サイドバーでは、年または月に公開された投稿数を表示したり、折りたたみ可能なメニューを自動的に展開したり、折りたたみ可能なメニューアイコンを変更したりできます。
WordPress でアーカイブに表示される月数を制限する方法に関するガイドのメソッド 1 を参照すると、さらに詳しく学ぶことができます。WordPress でアーカイブに表示される月数を制限する方法。

アーカイブの表示方法に満足したら、「更新」または「保存」をクリックします。
デモウェブサイトでの表示は次のとおりです。

オプション4:表示するアーカイブ月の数を制限する
デフォルトのWordPressアーカイブの外観が気に入っているかもしれません。しかし、コンテンツが大量にある場合、すべての月または年を表示すると、サイドバーが長くなりすぎる可能性があります。アーカイブリストに表示される月の数を制限することで、これを修正できます。
これを行うには、WordPress テーマのファイルに カスタムコードを追加 する必要があります。
これが初めての場合、少し intimidating に感じるかもしれません。しかし、心配しないでください。WPCode を使用すれば安全に行うことができます。
WPCodeは、WordPressにカスタムコードスニペットを簡単に追加および管理できるコードスニペットプラグインです。
徹底的にテストした結果、整理整頓に役立つことがわかりました。追加したスニペットを明確に確認でき、テーマファイルを編集することなく、機能しないコードをすぐに無効にできます。
弊社の経験に関する詳細については、WPCode レビューをご覧ください。
まず、WordPress管理ダッシュボードにWPCodeをインストールしましょう。必要であれば、WordPressプラグインのインストール方法に関するステップバイステップガイドをご覧ください。
注意: このチュートリアルでは、WPCode の無料版を使用できます。とはいえ、プレミアムバージョンには、技術的な知識なしでカスタムコードスニペットを作成するのに役立つAIコードジェネレーターなど、多くの特典が付いています。
次に、コードスニペット » + スニペットを追加に移動します。「カスタムコードを追加(新規スニペット)」を選択し、「+カスタムコードを追加」ボタンをクリックします。

次に、新しいコードスニペットに名前を付けます。「アーカイブ月の表示制限」のような簡単なものでも構いません。
次に、「コードタイプ」で「PHPスニペット」を選択してください。

コードプレビューボックスに以下のコードスニペットを貼り付けてください。
// Function to get archives list with limited months
function wpb_limit_archives() {
$archive_title = '<h3>Archives</h3>';
$my_archives = $archive_title . wp_get_archives(array(
'type'=>'monthly',
'limit'=>6,
'echo'=>0
));
return $my_archives;
}
// Create a shortcode
add_shortcode('wpb_custom_archives', 'wpb_limit_archives');
// Enable shortcode execution in text widget
add_filter('widget_text', 'do_shortcode');
'limit'=>6 と表示されている部分は、表示される月の数を制御します。必要に応じて任意の数に変更できます。
次に、[挿入]セクションまでスクロールし、[挿入方法]が「自動挿入」になっていることを確認します。[場所]は「フロントエンドのみ」を選択してください。
それが終わったら、上部にあるトグルをクリックしてコードを「アクティブ」にし、「スニペットを保存」ボタンをクリックします。

完了したら、ブロックベースのウィジェットエディターまたはフルサイトエディターに移動します。
次に、「+」ボタンをクリックして「ショートコード」ブロックを選択します。

その後、次の ショートコード をブロックに貼り付けます。
[wpb_custom_archives]
「更新」または「保存」ボタンをクリックすると、サイドバーに6ヶ月分のアーカイブのみが表示されます。

詳細については、WordPressで表示されるアーカイブ月の数を制限する方法に関するガイドのメソッド3を参照してください。
デフォルトのアーカイブブロックをショートコードに置き換えた後のアーカイブセクションの外観は次のとおりです。

オプション 5: 月別および年別アーカイブのドロップダウンメニューを表示する
時々、訪問者は投稿がいつ更新または公開されたかを正確に知らない場合があります。それらを助けるために、アーカイブセクションに年と月の2つのドロップダウンメニューを作成できます。
このWordPressデザイン要素により、ユーザーは長いリストをスクロールすることなく、古いコンテンツを見つけやすくなります。
カスタムコードスニペットとWPCodeを使用します。前回と同様に、まずWordPress管理画面にWPCodeをインストールしてください。
次に、コードスニペット » + スニペットを追加 に移動します。「カスタムコードを追加(新規スニペット)」を選択し、「+ カスタムコードを追加」ボタンをクリックします。
さて、新しいカスタムコードスニペットに名前を付けましょう。たとえば、「月別・年別アーカイブドロップダウンメニュー」のような簡単なもので構いません。
また、「コードタイプ」として「PHPスニペット」を選択してください。

コードプレビューボックスに、次のコードスニペットを挿入するだけです。
function custom_archive_dropdown_shortcode() {
// Get months array
global $wpdb, $wp_locale;
$months = $wpdb->get_results(
"SELECT DISTINCT YEAR(post_date) AS year, MONTH(post_date) AS month
FROM $wpdb->posts
WHERE post_type = 'post' AND post_status = 'publish'
ORDER BY post_date DESC"
);
$output = '<h3>Archives</h3>'; // Added 'Archives' title in H3
$month_dropdown = '<select id="archive-month" name="archive-month" onchange="document.location.href=this.options[this.selectedIndex].value;">';
$month_dropdown .= '<option value="">Select Month</option>';
foreach ( $months as $month ) {
$month_name = $wp_locale->get_month($month->month);
$year_month = sprintf('%d-%02d', $month->year, $month->month);
$month_dropdown .= sprintf(
'<option value="%s">%s %d</option>',
esc_url(home_url('/' . $month->year . '/' . $month->month . '/')),
$month_name,
$month->year
);
}
$month_dropdown .= '</select>';
// Get years array
$years = $wpdb->get_results(
"SELECT DISTINCT YEAR(post_date) AS year
FROM $wpdb->posts
WHERE post_type = 'post' AND post_status = 'publish'
ORDER BY post_date DESC"
);
$year_dropdown = '<select id="archive-year" name="archive-year" onchange="document.location.href=this.options[this.selectedIndex].value;">';
$year_dropdown .= '<option value="">Select Year</option>';
foreach ( $years as $year ) {
$year_dropdown .= sprintf(
'<option value="%s">%d</option>',
esc_url(home_url('/' . $year->year . '/')),
$year->year
);
}
$year_dropdown .= '</select>';
$output .= $month_dropdown . $year_dropdown; // Append dropdowns to output
return $output; // Return the complete output
}
add_shortcode('archive_dropdown', 'custom_archive_dropdown_shortcode');
前のコードスニペットと同様に、下にスクロールして「挿入」セクションに移動し、「挿入方法」で「自動挿入」を選択します。「場所」については、「フロントエンドのみ」を選択できます。
次に、コードスニペットをアクティブにして、「スニペットの保存」をクリックします。

次に、ブロックベースのウィジェットエディターまたはフルサイトエディターに移動します。
その後、「ショートコード」ブロックをサイドバーに追加します。この段階で、以下のショートコードをショートコードブロックに貼り付けることができます。
[archive_dropdown]
その後、「更新」または「保存」をクリックするだけです。

これで、ユーザーが月と年を選択して適切なコンテンツを見つけるための2つのドロップダウンメニューが表示されます。
月または年を選択すると、ユーザーは選択した期間のアーカイブページにリダイレクトされます。

オプション6:年ごとに整理された月別アーカイブを表示する
かつて、サイドバーに年別に整理された月次アーカイブが必要なサイトデザインに取り組んだことがあります。
このカスタムサイドバーアーカイブは、クライアントが年を左側に一度だけ表示したいと考えていたため、コーディングが困難でした。

幸いなことに、ウェブからインスピレーションを得て、カスタムコードスニペットを作成することができました。ウェブからインスピレーションを得て。この記事では、WPCode を使用して使用できる、はるかに簡単なバージョンのコードを作成しました。
まず、WordPress管理画面にWPCodeをインストールします。その後、コードスニペット » + スニペットを追加に移動します。「カスタムコードを追加(新規スニペット)」を選択し、「+ カスタムコードを追加」ボタンをクリックします。
新しいカスタムコードスニペットに名前を付けます。「カスタムアーカイブ」のような簡単な名前でも構いません。
また、「コードタイプ」として「PHPスニペット」を選択してください。

コードプレビューボックスに、次のコードスニペットを挿入するだけです。
add_shortcode( 'custom_archives', 'display_custom_archives' );
function display_custom_archives() {
$archives = wp_get_archives( array(
'type' => 'monthly',
'format' => 'custom',
'before' => '',
'after' => '<hr>',
'echo' => false,
) );
// Split the archives by year
$archives_by_year = array();
foreach ( explode( '<hr>', $archives ) as $archive_item ) {
if ( empty( $archive_item ) ) {
continue;
}
// Extract year from the archive link
preg_match( '/\/(\d{4})\//', $archive_item, $matches );
$year = isset( $matches[1] ) ? $matches[1] : date( 'Y' );
// Add to the year array
$archives_by_year[ $year ][] = $archive_item;
}
// Build the output
$output = '<h2 class="archives-title">Archives</h2>';
$output .= '<hr>';
$output .= '<table>';
foreach ( $archives_by_year as $year => $archives_for_year ) {
$output .= '<tr>';
$output .= '<td class="year">' . $year . '</td>';
$output .= '<td class="months">';
$output .= implode( '', $archives_for_year );
$output .= '</td>';
$output .= '</tr>';
}
$output .= '</table>';
return $output;
}
方法5で示したように、下にスクロールして「挿入」セクションに移動し、「挿入方法」で「自動挿入」を選択できます。「場所」では「フロントエンドのみ」を選択できます。
次に、コードスニペットをアクティブにして、「スニペットの保存」をクリックします。

新しいカスタムコードスニペットを再度作成しましょう。今回は、アーカイブウィジェットエリアをスタイル設定するためのコードスニペットです。CSSを使用して。
このコードスニペットに「アーカイブ用のカスタムCSS」という名前を付け、「コードタイプ」として「CSSスニペット」を選択できます。

次に、次のコードスニペットをコードプレビューボックスに貼り付けます。
.archives-title {
/* Style the title */
}
table {
width: 100%;
border-collapse: collapse;
}
td {
padding: 5px;
vertical-align: top;
}
.year {
font-weight: bold;
}
.months hr {
margin: 5px 0;
border: none;
border-top: 1px solid #ccc;
}
完了したら、挿入セクションまでスクロールし、挿入方法として「自動挿入」を選択します。次に、場所として「サイト全体ヘッダー」を選択します。
その後、コードをアクティブにして「スニペットを保存」をクリックするだけです。

ウィジェットエディターまたはフルサイトエディターに移動しましょう。
ここで、「+」ボタンをクリックし、「ショートコード」ブロックを選択します。次に、以下のショートコードをショートコードブロックに貼り付けます。
[custom_archives]
次に、「更新」または「保存」をクリックします。

これで完了です!
こちらがデモサイトで表示されるアーカイブの表示方法です:

WordPressブログのヒントとコツをもっと発見する
WordPressのブログアーカイブをさらに改善したいですか?またはサイドバーを再設計したいですか?以下の関連ガイドをご覧ください。
- カテゴリごとにカスタムサイドバー、ヘッダー、またはフッターを追加する方法
- WordPressでカスタム投稿タイプアーカイブページを作成する方法
- WordPress でカスタムアーカイブページを作成するための初心者ガイド
- WordPress でサイドバーの位置を変更する方法
- WordPressサイドバーのトリックで最大限の結果を得る方法
- WordPressサイドバーウィジェットに画像を追加する方法
このチュートリアルが、サイドバーでのWordPressアーカイブの表示をカスタマイズする方法を学ぶのに役立ったことを願っています。また、WordPressウェブサイトの編集方法に関する究極のガイドと、最高のWordPressドラッグアンドドロップページビルダーの専門家による選択も確認したいかもしれません。
この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterやFacebookでもフォローできます。
Serena
こんにちは。コードありがとうございます、動作しました!オプション5(ドロップダウンフィールドでのアーカイブ)を使用しました。私のコードでは、月ではなく年のみを使用しています。
ドロップダウンは年ごとのアーカイブページのテンプレートに配置したので、年をまたいで移動できます。しかし、ドロップダウンにすでに年が選択されていることを確認する方法を知りたいです。説明させてください。2023年のアーカイブを見ている場合、ドロップダウンにはすでに2023年が選択されているか、表示されているアーカイブの年を持つプレースホルダーがあるべきです。
それは可能でしょうか?
ありがとうございます。
WPBeginnerサポート
At the moment the code would not do that but we will look into the possibility for the future
管理者
イジー・ヴァネック
アーカイブを折りたたみ可能なメニューで表示できるオプションは本当に気に入っています。私のウェブサイトは3年前に開設され、現在1,300の記事があります。サイドバーの半分を占有しないソリューションを探していました。記事が非常に多いため、アーカイブを表示すると非常に大きく、見栄えが悪くなります。しかし、ドロップダウンメニューはこの問題を完全に解決し、アーカイブを驚くほどコンパクトにしました。この機能は、そうでなければアーカイブをメニューにまったく含めなかったかもしれないので、本当に役立ちました。
AD
アーカイブのサイドバーの下に、月だけが表示されてその月をクリックするとその月のすべての投稿が完全に表示されるページに遷移するのではなく、ブログの投稿をタイトル別に、対応する月の下に表示する方法、またはそのようなウィジェットはありますか?
コメントで既に回答されているかもしれませんが、申し訳ありません。まだコメントを読む時間がありません。
どのような助けや方向性でもいただけると幸いです!
WPBeginnerサポート
Hello,
WordPress でアーカイブを制限する方法に関する記事をご覧ください。WordPress でアーカイブを制限する方法。
管理者
Jaswinder
コードをありがとうございます。本当に助かりました。
カルラ・イズミ・バンフォード
この投稿をありがとうございます。非常に役立ちました。
マーガレット
これは非常に役立ちました!本当にありがとうございます。まさに私が求めていたことをしてくれました。
Thomas
こんにちは WPBEGINNER 様
この古い投稿にもまだ目を通していただけると嬉しいです。まず、この素晴らしいチュートリアルとコードに大変感謝いたします。
なんとか入手できました
年
1月 (2)
2月 (5)
…
…
しかし、年間の投稿数を数えることができませんでした。どうすれば、年ごとの投稿数をすべて表示できますか?
年 (28) …
ご協力いただき、誠にありがとうございます!
敬具、
トーマス
エリック
Thanks so much for this code!
it is helping me a lot.
特定のカテゴリに拡張する可能性はありますか?カテゴリIDで?
ジェイソン・ウォフォード
コードは完璧に動作していますが、各月に日を追加するにはどうすればよいですか?
トニー・ルイス
did not work for me seems to be missing some css
グザビエ
このコードはもう誰にも機能しないのですか?
ジェームズ
全く機能しません!!!
結果は例とは関係ありません。
いくつかの人がそれを有用で素晴らしいと感じたのは奇妙です。
問題は何ですか?
Eldad
ただ感謝を伝えたかっただけです
Xavier Bonet
こんにちは!まず最初に!素晴らしいコードです!完璧に動作します!ありがとうございます!
コードを編集して、例えば18ヶ月の期間を、表示している内容に合わせて上下に移動できるようにする方法があるかどうか、自分で考えていました。現状では、最後の18ヶ月しかアクセスできません。しかし、例えばリストの18ヶ月目を開いたときに、新しいページが開かれ、上記のコードが出力するアーカイブリストが、例えば9ヶ月前と7ヶ月後(またはその逆)を表示する新しい配列の中央に18ヶ月目を設定するようにする方法があるかもしれません。
私の説明はあまり明確ではないかもしれません。このウェブサイトを見てアイデアを得ました:http://marthabeck.com/。一番下のメニューまでスクロールすると、いくつかの年がありますが、表示されているのは現在の年のその月の分だけです。新しい年を開くと、その年の月が表示されます。もちろん、これはおそらく全く別のコードですが、少なくとも私が言っていることの視覚的な例として機能します。
WPBeginnerサポート
日付ベースのアーカイブテンプレートで条件付きタグを使用して作成してみてください。
is_archive single_month_title のためのコーデックスを参照してください
管理者
tobias
foreach()ループではなく、MySQLクエリに制限が必要です!
ジェシカ
月別だけでなく、日別または週別のアーカイブにする方法はありますか?
編集スタッフ
WordPressのカレンダーウィジェットを使用できます。
管理者
JP Lew
カレンダーを使用していますが、それに加えて、日別アーカイブも表示するようにコードを変更しました。うまくいきました。クエリはこちらです:
$days = $wpdb->get_results(“SELECT DISTINCT DAY( post_date ) AS day , MONTH( post_date ) AS month , YEAR( post_date ) AS year, COUNT( id ) as post_count FROM $wpdb->posts WHERE post_status = ‘publish’ and post_date <= now( ) and post_type = 'lecture' GROUP BY day , month , year ORDER BY post_date ASC”);
<a href="/year; ?>/month, 1, $day->year)) ?>/month, $day->day, $day->year)) ?>”>month, $day->day, $day->year)) . “, ” . date_i18n(“F”, mktime(0, 0, 0, $day->month, 1, $day->year)) . ” ” . date(“j”, mktime(0, 0, 0, $day->month, $day->day, $day->year)) . “, ” . $queried_year ?>post_count . “)”; ?><br> //outputs: 木曜日、2013年8月22日 (12)
ところで、投稿ありがとうございます。まさに探していたものでした。パフォーマンスも驚くほど良いです。
JP Lew
ok, your comment system stripped out all my `php` tags essentially rendering that code useless. Anyways, it’s possible and easy, you’ll figure it out.
Roelof
Hello,
このアイデアは気に入りました。特定のカテゴリの記事のみをアーカイブに含め、他のすべてのカテゴリを含めないように適応させることはできますか?
Roelof Wobben
アッシャー・チャールズ
素晴らしいコード片です。アーカイブをより良く表示する方法を探していました。ありがとうございます。
Carla
アーカイブページをカスタマイズする方法について、あらゆる場所でチュートリアルを探しました。投稿タイトルと投稿日付のリストを生成するページを作成することはできましたが、これは素晴らしいスタートです。そして今、ページがこのようになるように、月ごとにグループ化する方法を見つける必要があります。
2013
5月
これは投稿タイトルです
2013年5月28日
そしてもう一つの投稿
2013年5月20日
どうすればよいかよくわかりません。何か提案はありますか?Wordpressフォーラムなどで、多くの人がアーカイブをこのように見せたいと思っていることに気づきましたが、彼ら(私と同じように)は助けを得ていません。
ありがとうございます!
Núria
このコードスニペットをありがとうございます。大変役立ちました。月の文字列の出力をロケール言語にするための小さな変更を加えたいだけです。
16行目のdate()関数をdate_i18n()関数に置き換えることができます。
– echo date("F", mktime(0, 0, 0, $month->month, 1, $month->year))
– echo date_i18n("F", mktime(0, 0, 0, $month->month, 1, $month->year))
したがって、この関数は、サイトの言語に基づいて、例えば3月に対して、英語では「March」、スペイン語では「Marzo」、カタロニア語では「Març」という文字列を返します。
編集スタッフ
この提案ありがとうございます。コードを更新しました。
管理者
Matt
使用しているテーマには、サイドバー用のウィジェットがあります。PHPファイルはショートコードで書かれています。これをショートコードに変換してファイルに入れるにはどうすればよいですか?よろしくお願いします。
編集スタッフ
最初のスニペットを取得し、関数に変換してください。次に、この記事を使用してショートコードを作成します。
https://www.wpbeginner.com/wp-tutorials/how-to-add-a-shortcode-in-wordpress/
管理者
Ryan
こんにちは、
ちょうど探していたものを見つけました。しかし、小さな問題があります。最後の2ヶ月の投稿(10月と11月)はサイドバーに表示されますが、12月に新しい投稿を追加したのに、アーカイブリストに12月が表示されません。
なぜ現在の月が表示されないのか不思議です
編集スタッフ
それは確かに奇妙です。クライアントのウェブサイトでこれを正常に実行しています。
管理者
thao_
年間の投稿数合計と、各月の投稿数を表示することは可能ですか?つまり、各月の投稿数の横に年間の合計も表示されるようにしたいのです。アーカイブ画像の例を使用すると、2010年(20)と表示され、その下に現在表示されている月が表示されます。
編集スタッフ
はい、1年間のすべての月のカウントを追加して、必要であれば表示することができます。
管理者
クレイグ・コフマン
I think I got it sorted. I moved the “break;” up into the code before it spits out the monthly … . I figured it out after looking at Appleton’s site. His code is slightly different, as you noted. I find it interesting how people can change a single bit of code and the effect is wildly different from such a small edit. To borrow from WP, “Code is Poetry”
1つ変更を加えたので、お伝えしたいと思います。上記のコードでは、最新の月が表示されないようでした。つまり、今年8月(現在8月なので)は表示されず、7月は正常に表示されました。SQLステートメントを変更したところ、表示されるようになりました。現在の月が必要かどうかはわかりませんが、アーカイブであれば現在の月もアーカイブされるのかもしれません。
私の変更点は以下の通りです。
post_date YEAR(CURDATE())
これは現在いる月を取得しているようです。私はSQLの達人ではないので、これを行わない理由や、もっと良い方法があるのかもしれません。しかし、私にはうまくいっています。
このチュートリアルに時間を割いていただきありがとうございます。wp_get_archives()を操作しようとして頭を抱えるのを確実に回避できました。
クレイグ・コフマン
うーん…コードが一部削除されたようです。「post_date」と「YEAR(CURDATE())」の間に、より大きい記号があるはずです。もう一度試してみます。うまくいけば取れるはずです。
post_date > YEAR(CURDATE())
Sorry for the additional post, but a ‘tweak’ doesn’t change anything if the proper code does not display
Ryan
クレイグさん、
どこに置けばいいかわかりません
post_date > YEAR(CURDATE())
ありがとう
クレイグ・コフマン
Ryan –
変ですね。Float Leftサイトに返信を投稿しましたが、表示されていないようです。コードの場所を示すダウンロードファイルはこちらです。
http://www.octoberland.com/fileChute/displayCurrentMonth.zip
テンプレートの index.php ファイルにコードを挿入しました。クライアントがすべてのページに表示したいと要望したため、そこにあります。現在の年の月のみを取得します。つまり、2011年に戻っても、表示される月は2012年のままになります。
Andyがそこに置いていたコードを、MySQLの「WHERE」行に私のコードを追加しました。
また、クライアントが年別アーカイブも表示したいと考えていたため、標準のWPアーカイブ機能もそのまま使用しています。これは、現在の月を表示するためには必要ありません。
お役に立てば幸いです。
– クレイグ
Ryan
ありがとう、クレイグさん。これで問題が解決したようです。
クレイグ・コフマン
Ryan –
Happy it worked for you. It took me several hours (I am not a MySQL developer) to figure that out. Now that it is helped someone else, it was worth the effort
– クレイグ
メアリー
日付を表示するにはどうすればよいですか?
編集スタッフ
すべての月のすべての30日を表示したいのですか?それとも、単に日数を表示したいだけですか?組み込みのカレンダーウィジェットを使用する方が良いかもしれません。
管理者
アクシャット・ゴエル
Great post!! Saved my day!
zuzanka
こんにちは、プラグインは追加せず、ウィジェットのみを使用しています。月の数を制限しました(例:2ヶ月)が、2ヶ月表示され、残りは「…」または「アーカイブ」の下に表示されることを期待しています。残りを表示する方法が見つかりません。この問題を知っている方はいらっしゃいますか?よろしくお願いします。
wpbeginner
@sgclark That sounds good. Will have to test out his plugin and then add it in this article
sgclark
@wpbeginner 使用されていない月は独自の CSS クラスでラップされているため、CSS の「display:none」を使用して使用されていない月を非表示にできます。投稿がその月に表示されると、(PHP を介して) 別のクラスに切り替わります。
wpbeginner
@sgclark そのプラグインは良さそうですね…未使用の月を全く表示したくない場合、それがどのように機能するか疑問です。しかし、リポジトリにホストされていないため、まだ試していません。
sgclark
Justin Blanton は SmartArchives という名前の優れた WordPress プラグインを作成しました。彼の CSS ファイルを調べて表示を調整することもできます。サイドバー PHP ページにある余分なコードをすべて気にする必要はありません。 – http://hypertext.net/projects/smartarchives