WordPressのカテゴリーやタグなどのアーカイブページを上部に固定する方法
WordPress のカテゴリやタグなどのアーカイブ ページを上部に固定するにはどうすればよいですか?
この記事の例では、WordPress のカテゴリやタグなどのアーカイブ ページの先頭に到達する方法について説明します。皆さんの参考に共有してください。具体的な分析は次のとおりです。
推奨事項: "wordpress チュートリアル"
WordPress では、デフォルトでは、トップ記事は次のとおりです。ホームページを分類したい場合は、/ タグなどのアーカイブ ページでも記事を上部に固定できます。二次開発が必要です。
次に、wp-includes/query のホームページを固定するためのコードを参照してください。 .php. 少し改造するだけでカテゴリーページ、タグページ、著者ページを作ることができます アーカイブページや日付ページなどもトップページと同様に範囲内の固定記事を上部に表示することができます 以下のコードを関数に入れるだけです現在のテーマの .php
コードは次のとおりです:
add_filter('the_posts', 'putStickyOnTop' ); function putStickyOnTop( $posts ) { if(is_home() || !is_main_query() || !is_archive()) return $posts; global $wp_query; $sticky_posts = get_option('sticky_posts'); if ( $wp_query->query_vars['paged'] <= 1 && is_array($sticky_posts) && !emptyempty($sticky_posts) && !get_query_var('ignore_sticky_posts') ) { $stickies1 = get_posts( array( 'post__in' => $sticky_posts ) ); foreach ( $stickies1 as $sticky_post1 ) { // 判断当前是否分类页 if($wp_query->is_category == 1 && !has_category($wp_query->query_vars['cat'], $sticky_post1->ID)) { // 去除不属于本分类的文章 $offset1 = array_search($sticky_post1->ID, $sticky_posts); unset( $sticky_posts[$offset1] ); } if($wp_query->is_tag == 1 && has_tag($wp_query->query_vars['tag'], $sticky_post1->ID)) { // 去除不属于本标签的文章 $offset1 = array_search($sticky_post1->ID, $sticky_posts); unset( $sticky_posts[$offset1] ); } if($wp_query->is_year == 1 && date_i18n('Y', strtotime($sticky_post1->post_date))!=$wp_query->query['m']) { // 去除不属于本年份的文章 $offset1 = array_search($sticky_post1->ID, $sticky_posts); unset( $sticky_posts[$offset1] ); } if($wp_query->is_month == 1 && date_i18n('Ym', strtotime($sticky_post1->post_date))!=$wp_query->query['m']) { // 去除不属于本月份的文章 $offset1 = array_search($sticky_post1->ID, $sticky_posts); unset( $sticky_posts[$offset1] ); } if($wp_query->is_day == 1 && date_i18n('Ymd', strtotime($sticky_post1->post_date))!=$wp_query->query['m']) { // 去除不属于本日期的文章 $offset1 = array_search($sticky_post1->ID, $sticky_posts); unset( $sticky_posts[$offset1] ); } if($wp_query->is_author == 1 && $sticky_post1->post_author != $wp_query->query_vars['author']) { // 去除不属于本作者的文章 $offset1 = array_search($sticky_post1->ID, $sticky_posts); unset( $sticky_posts[$offset1] ); } } $num_posts = count($posts); $sticky_offset = 0; // Loop over posts and relocate stickies to the front. for ( $i = 0; $i < $num_posts; $i++ ) { if ( in_array($posts[$i]->ID, $sticky_posts) ) { $sticky_post = $posts[$i]; // Remove sticky from current position array_splice($posts, $i, 1); // Move to front, after other stickies array_splice($posts, $sticky_offset, 0, array($sticky_post)); // Increment the sticky offset. The next sticky will be placed at this offset. $sticky_offset++; // Remove post from sticky posts array $offset = array_search($sticky_post->ID, $sticky_posts); unset( $sticky_posts[$offset] ); } } // If any posts have been excluded specifically, Ignore those that are sticky. if ( !emptyempty($sticky_posts) && !emptyempty($wp_query->query_vars['post__not_in'] ) ) $sticky_posts = array_diff($sticky_posts, $wp_query->query_vars['post__not_in']); // Fetch sticky posts that weren't in the query results if ( !emptyempty($sticky_posts) ) { $stickies = get_posts( array( 'post__in' => $sticky_posts, 'post_type' => $wp_query->query_vars['post_type'], 'post_status' => 'publish', 'nopaging' => true ) ); foreach ( $stickies as $sticky_post ) { array_splice( $posts, $sticky_offset, 0, array( $sticky_post ) ); $sticky_offset++; } } } return $posts; }
コードの説明:
1. ピン留めされたすべての記事をアーカイブに表示したい場合ページにあるコードの 11 ~ 43 行目を削除します;
2. 特定のカテゴリ ページに固定された記事を表示したくない場合は、3 行目の
コードを次のように変更します。
if( //改成: // abc是分类名称 if ( is_category( 'abc' ) ||
3. 特定のタブ ページに固定記事を表示したくない場合は、3 行目のコード
# を変更します ##コードは次のとおりです:if( //改成: // abc是标签名称 if ( is_tag( 'abc' ) ||
if( //改成: // abc是作者昵称 if ( is_author( 'abc' ) ||
|| !is_main_query()
add_filter('post_class', 'addStickyClass' ,10,3 ); function addStickyClass( $classes, $class, $post_id ){ if( is_sticky() && is_category() && !isset( $classes['sticky'] ) ){ $classes[] = 'sticky'; } return $classes; }
以上がWordPressのカテゴリーやタグなどのアーカイブページを上部に固定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









WordPressの記事リストを調整するには4つの方法があります。テーマオプションを使用し、プラグイン(投稿タイプの注文、WP投稿リスト、ボックスのものなど)を使用し、コード(functions.phpファイルに設定を追加)を使用するか、WordPressデータベースを直接変更します。

WordPressにコメントを追加する手順は次のとおりです。コメントを有効にします。特定の記事またはすべての記事のコメントを有効にするために「コメントを許可」を確認します。コメントオプションの設定:コメントの承認、ページング、ネストされたコメント、その他の設定をカスタマイズします。コメントフォームの追加:提供されたコードを使用して、目的の場所にコメントフォームを追加します。コメントを表示:提供されたコードを使用して、送信されたコメントを表示します。コメントへの返信:返信リンクを介して1つのコメントに返信するか、バッチ操作を使用して複数のコメントに返信します。コメントの管理:[コメント]タブでコメントを表示、削除、承認、タグ付けします。

完全なWordPress製品登録プラグインはありません。選択は、実際のニーズとWebサイトのサイズに基づいている必要があります。推奨されるプラグインは次のとおりです。メンバープレス:強力だが高価で複雑な構成制限コンテンツプロ:コンテンツの制限とメンバー管理に焦点を当て、費用対効果の高いデジタルダウンロード:デジタル製品を販売し、ユーザーが追加機能として登録

WordPressのWebサイトアカウントにログインするには:ログインページにアクセスしてください:WebサイトURL Plus "/wp-login.php"を入力します。ユーザー名とパスワードを入力します。 [ログイン]をクリックします。検証2段階検証(オプション)。ログインに正常にログインすると、Webサイトのダッシュボードが表示されます。

WordPressの編集日は、次の3つの方法でキャンセルできます。 2. functions.phpファイルにコードを追加します。 3. wp_postsテーブルのpost_modified列を手動で編集します。

WordPressテーマエディターを使用したり、事前に構築されたテーマ、テーマジェネレーターなどのサードパーティヘルプを求めたり、開発者を雇って独自のWordPressテーマを作成またはカスタマイズしたりできます。トピックの基本を理解し、サブトピックを使用し、変化をテストし、パフォーマンスを最適化することで、ユニークで効果的なオンラインプレゼンスを作成できます。

WordPressエラー解決ガイド:500内部サーバーエラー:プラグインを無効にするか、サーバーエラーログを確認します。 404ページが見つかりません:パーマリンクをチェックし、ページリンクが正しいことを確認してください。死の白い画面:サーバーPHPメモリ制限を増やします。データベース接続エラー:データベースサーバーのステータスとWordPress構成を確認します。その他のヒント:デバッグモードを有効にし、エラーログを確認し、サポートを求めます。エラーの防止:定期的にWordPressを更新し、必要なプラグインのみをインストールし、定期的にWebサイトをバックアップし、Webサイトのパフォーマンスを最適化します。

WordPressコードをコピーする方法は?管理インターフェイスからコピー:WordPress Webサイトにログインし、宛先に移動し、コードを選択し、Ctrl C(Windows)/Command C(MAC)を押してコードをコピーします。ファイルからコピー:SSHまたはFTPを使用してサーバーに接続し、テーマまたはプラグインファイルに移動し、コードを選択し、Ctrl C(Windows)/コマンドC(MAC)を押してコードをコピーします。
