ありがとうございます、エリア内に収まりました!
経緯がわかりづらくてすみません、まず最初にウィジェットの「アーカイブ上部」を設置したところ崩れてしまいました。
アクションフィルターならいけるのかな?とsnow_monkey_prepend_archive_entry_content
を試したのですが同じでした…。
スクショはウィジットです。
投稿タイプ「news」のみ対象となっていますが、カテゴリーとタグの各一覧ページにも表示させられるでしょうか。
カテゴリーの1つをクリックしたあとも、常駐しているように見せる感じです。
その先の個々の投稿ページには必要ありません。
よろしくお願いいたします。
あ、snow_monkey_prepend_archive_entry_content
フックを使って独自にウィジェットエリアをつくったのかなと思ったのですがそういうことじゃなくて、普通にアーカイブ上部ウィジェットエリアにタグとカテゴリーのウィジェットを入れたけど表示が崩れるということですよね? 確認してみます。
【お使いの Snow Monkey のバージョン】 20.0.2
【お使いの Snow Monkey Blocks のバージョン】 19.2.1
【お使いの Snow Monkey Editor のバージョン】 9.2.1
【お使いのブラウザ】 Chrome
【当該サイトのURL】 ー(作成中)
### 実現したいこと
カスタム投稿のアーカイブページの上部エリアに、カテゴリとタグのリンクボタンを見栄え良く設置したい
### 発生している問題
1. ウィジットを使いパーツの表示はできたが、横いっぱいに広がってしまい見栄えを整えることができない。
2. カスタム投稿のみに表示させたいのに、WP標準の投稿にも反映されてしまう。
### 試したこと
ウィジェットの「アーカイブ上部」内にタクソノミーを設置。
アクションフィルター「snow_monkey_prepend_archive_entry_content」を利用して設置。
フォーラムとGoogle検索。
Custom Post Type UIを利用しています。
アーカイブページの上部にカテゴリーとタグのリストを表示させ、クリックしたらそれぞれ一覧ページに飛ぶようにしたいです。
カスタマイザー上の設定は 投稿のビューテンプレート、1カラム、リッチメディア にしています。
アーカイブ上部エリアも1カラムの幅にしたいのですが、左右いっぱいに広がってしまい調整する方法が思いつきません。
カラムに入れて追加CSSを試してみましたがスキル不足でうまくできないのと、そもそももっと手前で間違えているのでは…と行き詰まっています。
それが解決しても「2」の問題があり、通常の投稿ページ一覧にも同じ内容のウィジットが表示されてしまいます。
2箇所で表示/非表示をコントロールすることはできないのでしょうか。
(▽横いっぱいに広がってしまう)
(▽ブログにも反映されてしまう)
有料になりますが、Archive Content アドオンを使うのが一番簡単だと思います。
自力で頑張る場合は、
の応用編で、snow_monkey_before_contents_inner
ではなくて snow_monkey_before_archive_entry_content
や snow_monkey_prepend_archive_entry_content
にフックする形でもできます。ただ、条件分岐しないと全てのアーカイブページに表示されてしまうので、is_category( 'hoge' )
で条件分岐が必要です。カテゴリーごとに違うコンテンツを割り当てたい場合は条件分岐とページを呼び出すコードがその分増えるのでその分複雑にはなります…。
お世話になっております。
コードはこちらです。
/* アーカイブページの記事一覧上部に固定ページを挿入 */
add_action(
'snow_monkey_prepend_archive_entry_content',
function () {
/* 特定のアーカイブページを指定 */
if (is_category('server-domain')) {/* 'news'の記述を各自の環境に合わせて変更 */
$new_query = new \WP_Query(
[
'pagename' => 'server-selection-point',/* 作成したページのスラッグ */
'post_type' => 'page',/* 固定ページを指定 */
'post_status' => ['draft']/* 下書きページの指定 */
]
);
if (!$new_query->have_posts()) {
return;
}
$new_query->the_post(); ?>
<div class="p-entry-content">
<?php the_content(); ?>
</div>
<?php wp_reset_postdata();
}
}
);
【お使いの Snow Monkey のバージョン】19.2.0
【お使いの Snow Monkey Blocks のバージョン】8.2.0
【お使いの Snow Monkey Editor のバージョン】9.1.2
【お使いのブラウザ】firefox
【当該サイトのURL】https://kuji-blog.site/category/web/server-domain/
### 実現したいこと
表題の通り、アーカイブページに表示した固定ページの目次が反映されないので表示したいです。
### 発生している問題
snow_monkey_prepend_archive_entry_contentでアーカイブページに固定ページを表示させています。
Snow Monkey Blocksで目次ブロックを挿入したのですが、実際のページでは表示されません。
投稿ページの目次をmy snow monkeyを使用して表示しているのでなにかしら影響しているのでしょうか。
よろしくお願い致します。
著者アーカイブの記事一覧上部であれば、こちらのサイトを参考にしていただくと、
snow_monkey_before_archive_entry_content
か snow_monkey_prepend_archive_entry_content
になるのかなと思いますが(自身で決めてください)、あとはそこに is_author()
で分岐をしてもらって、表示したい情報を呼び出せば実現できそうな気がします。
ちょっと試してみたんですが、get_posts
だと、うまくいかないみたいですね。
WP_Query
を使用して以下のコードで表示できたので共有しておきます。
<?php
add_action(
'snow_monkey_prepend_archive_entry_content',
function() {
$args = array(
'posts_per_page' => -1,
'category_name' => 'news',
'tag' => 'feature',
);
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) {
?>
<h2>Feature</h2>
<ul class="feature_list">
<!-- the loop -->
<?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
<li>
<?php the_title( '<h3>', '</h3>' ); ?>
<?php the_excerpt( ); ?>
</li>
<?php endwhile; ?>
<!-- end of the loop -->
</ul>
<?php
wp_reset_postdata();
}
}
);
【お使いの Snow Monkey のバージョン】15.16.0
【お使いの Snow Monkey Blocks のバージョン】13.4.0
【お使いの Snow Monkey Editor のバージョン】6.2.1
【お使いのブラウザ】Chrome
【当該サイトのURL】
### 実現したいこと
「ニュース」カテゴリーのアーカイブページで、固定表示したい記事が複数ある。
### 発生している問題
### 試したこと
snow_monkey_prepend_archive_entry_content を使ってfeatureタグのついた記事を先に表示して、その後に全件表示するという次善の策を取ろうと考えました。
add_action(
'snow_monkey_prepend_archive_entry_content',
function() {
$posts = get_posts( array(
'posts_per_page' => -1,
'category_name' => 'news',
'tag' => 'feature'
));
if( $posts ):
?>
<h2>Feature</h2>
<ul class="feature_list">
<?php
foreach( $posts as $post ):
setup_postdata( $post );
?>
<li>
(省略)
</li>
<?php
endforeach;
?>
</ul>
<?php endif;
wp_reset_postdata();
}
);
→最初の記事だけが複数表示される。
ループの書き方が間違っているのかフックの使い方を間違っているのか・・・だと思うのですが解決できず・・・ご教授いただけますと助かりますm(_ _)m
(他に簡単に要望に応えられる方法がありましたらそちらを教えていただけるとさらに助かりますm(_ _)m
My Snow Monkeyを用意して、my-snow-monkey.php
に以下のように書くと、上に希望されている場所にHTMLソースコードを挿入することができます。また、カスタム投稿タイプだけということですので、カスタム投稿タイプのスラッグ名で条件分岐をすると良いでしょう。
また、snow_monkey_prepend_archive_entry_content
にフック先を変えても似たような場所に出力されると思うので、適宜試してみてください。
add_action(
'snow_monkey_before_archive_entry_content',
function() {
if ( is_post_type_archive('投稿タイプ名') ) {
?>
<p>挿入したいHTMLソースコードを書く</p>
<?php
}
}
);
https://github.com/inc2734/snow-monkey/wiki/Action-hooks#snow_monkey_before_archive_entry_content