[ 解決済 ] アーカブページの選択方法
[ 解決済 ] アーカブページの選択方法
タグ: アーカブリスト ドロップダウン
- このトピックには16件の返信、2人の参加者があり、最後にkomori0321により3年、 11ヶ月前に更新されました。
-
投稿者投稿
-
2020年11月29日 11:01 AM #45153
komori0321参加者■ 利用テーマとバージョン :
WordPress 5.5.3
Lightning Proバージョン: 8.1.1
VK All in One Expansion Unitバージョン 9.48.1.0
VK Blocks Pro
バージョン 0.57.2
■ 質問内容:
いつもお世話になります
アーカイブウィジェットがドロップダウンに対応
になり非常に使いやすくなり使用させていただいています
そこで、アーカブページを表示後、アーカブページ内メインフレームの上部に(選択年・月表示のところ)に”vkアーカブリスト”同様の機能があれば選択の年・月の変更が容易になり、使いやすくなるとの意見をいただいています。可能でしょうか?
追加cssでも可能でしたらご教授願えればと思います
いつもすみませんよろしくお願いいたします該当URL : https://*********※該当URLはフォーラムライセンスが有効のユーザーにのみ表示されます
2020年12月1日 3:28 PM #45214サイドバーのウィジェットエリアに配置して、アーカイブページを2カラムにしてサイドバーに、あるいは1カラムにして記事一覧の下に表示だとまずいでしょうか?
通常一般的には 最新記事 と 過去記事の年別での表示 だと 最新記事の方が優先順位が高いため、年別あるいは月別のドロップダウンが記事一覧より先にあるのはかなりイレギュラーなケースではないかなと思います。
あるいは年別月別のではなく、カテゴリーの絞り込み検索の方が需要は高いのではないでしょうか?
それでしたら最近公開したプラグイン VK Filter Search で可能です。
2020年12月1日 4:07 PM #45221
komori0321参加者いつもお世話になります。
すみません。書き方がまずかったのですが、絞り込みは特に必要ないです年か月かどちらか選択(弊社の場合年のみ)でいいのですが、アーカブページのメインフレームの上部に設置したいです。
サイドバーでの設置だと現状と変わらないので?….
カテゴリーの絞り込みならメインフレームの最上部の設置可能ですか?
(アーカブページの編集の方法がわからなくて..)アーカイブウィジェットがドロップダウンをアーカブページのメインフレーム最上部に設置する方法があれば教えていただければ嬉しいです
ひと手間で設置できればの要望です。いろいろ修正を伴う場合は却下していただいて問題ないです
ただ、あれば使い勝手がいいかなー と思いまして・・ すみませんその程度です..- この返信は3年、 11ヶ月前にkomori0321が編集しました。
2020年12月5日 2:01 PM #45382おそらく 子テーマの functions.php などに以下を追加すれば投稿タイプアーカイブの上部にウィジェットエリアが現れるはずです。
function my_set_archive_loop_before_widget_area(){ // 公開されている投稿タイプを呼び出し $postTypes = get_post_types( array( 'public' => true ) ); // 固定ページはアーカイブないので削除 unset( $postTypes['page'] ); foreach ( $postTypes as $postType ) { // Get post type name /*-------------------------------------------*/ $post_type_object = get_post_type_object( $postType ); if ( $post_type_object ) { // Set post type name $postType_name = esc_html( $post_type_object->labels->name ); // Set post type widget area register_sidebar( array( 'name' => sprintf( __( 'Archive page loop before (%s)', 'lightning-pro' ), $postType_name ), 'id' => $postType . '-archive-loop-before', 'description' => '', 'before_widget' => '<aside class="widget %2$s" id="%1$s">', 'after_widget' => '</aside>', 'before_title' => '<h2 class="widget-title">', 'after_title' => '</h2>', ) ); } // if( $post_type_object ){ } // foreach ($postTypes as $postType) { } add_action( 'widgets_init', 'my_set_archive_loop_before_widget_area' ); function my_display_archive_loop_before_widget_area( $query ){ if ( ! is_post_type_archive() ){ return; } // $loop_action_point を loop_start にする場合 // if ( ! $query->is_main_query() ) { // return; // } global $wp_query; if ( ! empty( $wp_query->query_vars['post_type'] ) ) { $post_type = $wp_query->query_vars['post_type']; if ( ! empty( $wp_query->posts ) ){ // 2ページ目以外は非表示 if ( get_query_var( 'paged', 0 ) !== 0 ){ return; } } // ※ get_post_type() は該当記事がない場合に投稿タイプが取得できないため $widget_area = $post_type . '-archive-loop-before'; if ( is_active_sidebar( $widget_area ) ) { dynamic_sidebar( $widget_area ); } } } // Lightningの場合 $loop_action_point = 'lightning_loop_before'; // // Katawaraの場合 // $loop_action_point = 'katawara_loop_before'; // // その他のテーマの場合(該当記事が0件の場合は表示されません) // $loop_action_point = 'loop_start'; add_action( $loop_action_point, 'my_display_archive_loop_before_widget_area' );
2020年12月6日 5:29 PM #45405
komori0321参加者石川様
お世話になります
いつも丁寧な対応ありがとうございますご教示いただいた内容で試してみます
結果 報告します
よろしくお願いします2020年12月6日 7:29 PM #45407
komori0321参加者石川様
お世話になります
子テーマの functions.php にご教授いただいたPHPを追加しました
・外観→ウィジェットに
Archve page loop before(投稿)
Archve page loop before(メディア)
が現れました
どちらにも”VKアーカブリスト”を追加しましたが
ページに反映されません
何度もすみませんよろしくお願いいたします2020年12月7日 1:50 AM #45415すみません、カスタム投稿なら問題なかったのですが、通常の投稿だと先のコードだとダメでした。
以下で確認ください。
function my_set_archive_loop_before_widget_area(){ // 公開されている投稿タイプを呼び出し $postTypes = get_post_types( array( 'public' => true ) ); // 固定ページはアーカイブないので削除 unset( $postTypes['page'] ); foreach ( $postTypes as $postType ) { // Get post type name /*-------------------------------------------*/ $post_type_object = get_post_type_object( $postType ); if ( $post_type_object ) { // Set post type name $postType_name = esc_html( $post_type_object->labels->name ); // Set post type widget area register_sidebar( array( 'name' => sprintf( __( 'Archive page loop before (%s)', 'lightning-pro' ), $postType_name ), 'id' => $postType . '-archive-loop-before', 'description' => '', 'before_widget' => '<aside class="widget %2$s" id="%1$s">', 'after_widget' => '</aside>', 'before_title' => '<h2 class="widget-title">', 'after_title' => '</h2>', ) ); } // if( $post_type_object ){ } // foreach ($postTypes as $postType) { } add_action( 'widgets_init', 'my_set_archive_loop_before_widget_area' ); function my_display_archive_loop_before_widget_area( $query ){ // $loop_action_point を loop_start にする場合 // if ( ! $query->is_main_query() ) { // return; // } if ( ! is_post_type_archive() && ! is_home() && ! is_front_page() ){ return; } if ( is_home() ){ $post_type = 'post'; } global $wp_query; if ( ! empty( $wp_query->query_vars['post_type'] ) ){ $post_type = $wp_query->query_vars['post_type']; } if ( empty ( $post_type ) ) { return; } if ( ! empty( $wp_query->posts ) ){ // 2ページ目以外は非表示 if ( get_query_var( 'paged', 0 ) !== 0 ){ return; } } // ※ get_post_type() は該当記事がない場合に投稿タイプが取得できないため $widget_area = $post_type . '-archive-loop-before'; if ( is_active_sidebar( $widget_area ) ) { dynamic_sidebar( $widget_area ); } } // Lightningの場合 $loop_action_point = 'lightning_loop_before'; // // Katawaraの場合 // $loop_action_point = 'katawara_loop_before'; // // その他のテーマの場合(該当記事が0件の場合は表示されません) // $loop_action_point = 'loop_start'; add_action( $loop_action_point, 'my_display_archive_loop_before_widget_area' );
2020年12月7日 9:39 AM #45416
komori0321参加者石川様
お世話になります
phpの修正版をそのままコピーペしました
状況に変化ありません。
前回同様に
ウィジエットは現れますが、VKアーカブ
をセットしても反映されませんまた、ieでページヘッター画像を表示させるため、うなこ様にご教授いただいた下記cssを追記していますが
>@media all and (-ms-high-contrast:none){
> *::-ms-backdrop, .page-header { background: url(○○.jpg) no-repeat center; }
>}
保証外のieだけなのですが
添付ファイルのようになります何度もすみません よろしくおお願いします
Attachments:
You must be logged in to view attached files.2020年12月7日 12:43 PM #45436
komori0321参加者石川様
お世話になります
すみません。確認が不十分でした
アーカブページのTOPにはVKアーカブが表示されています
そこで一度選択して表示すると、VKアーカブは消えてしますます
ですので、再選択しようとしたとき、その画面から再選択できません
できたら、選択後も選択を変更できるようにが希望なのですが
説明不足ですもません
可能でしょうか?2020年12月16日 1:54 PM #45844if ( ! is_post_type_archive() && ! is_home() && ! is_front_page() ){ return; }
を
if ( ! is_archive() && ! is_home() && ! is_front_page() ){ return; }
に変更してみてください。
2020年12月16日 8:59 PM #45858
komori0321参加者石川様
お世話になります
”ExUnit 9.49.xで 投稿タイプアーカイブページで記事一覧の上部にウィジェットエリアを追加できるようになりました”
➡とのことでしたので、これを利用したのですが、同じようになりました
これを利用した場合、ご教授いただいた変更はどのようにphpに追加すればよろしいですか?よろしくお願いします
2020年12月17日 12:47 AM #45861ExUnitの機能では投稿タイプアーカイブトップにしかできず、
今回追加で要望いただいた件には対応できませんので、
ExUnitの機能は停止して、元々のコードのif ( ! is_post_type_archive() && ! is_home() && ! is_front_page() ){ return; }
を
if ( ! is_archive() && ! is_home() && ! is_front_page() ){ return; }
に変更してみてください。
2020年12月17日 9:36 AM #45865
komori0321参加者石川様
お世話になります
ExUnitの機能は停止して
いただいたphpを張り付け
今回の修正分を修正しましたが
状況は変化なく、投稿タイプアーカイブトップには現れますが
次のページで表示されなくなります
取り急ぎ報告です
よろしくお願いします2020年12月17日 10:26 AM #45867ご確認ありがとうございます。
下記も削除してください。if ( ! empty( $wp_query->posts ) ){ // 2ページ目以外は非表示 if ( get_query_var( 'paged', 0 ) !== 0 ){ return; } }
よろしくお願いいたします。
2020年12月17日 11:20 AM #45871
komori0321参加者石川様
お手数をおかけします
対象部分を削除しましたが
状況に変化ありませんよろしくお願いします
-
投稿者投稿
- このトピックに返信するにはログインが必要です。
- トピックタグ
- アーカブリスト ドロップダウン