-
投稿者検索結果
-
2021年2月12日 6:39 PM #67938
返信が含まれるトピック: アーカイブページのアイキャッチにクラスを追加したい
アクツさん
ありがとうございます!
そして、非常にお恥ずかしいです…
ご指摘どおりのケアレスミスでした。
書き直したコードは以下のとおりです。
本当にありがとうございました。
add_filter( 'snow_monkey_template_part_render_template-parts/archive/eyecatch', function ( $html, $name, $vars ) { $html = str_replace( '<div class="c-eyecatch">', '<div class="c-eyecatch w1280px">', $html ); return $html; },10,3 );
♥ 1Who liked: No user2021年2月12日 6:15 PM #67933返信が含まれるトピック: アーカイブページのアイキャッチにクラスを追加したい
tomohanano さんこんにちは。
コードがちゃんと動くとかはチェックしていないのですが、記載してくれたコードのフック名が違っているのでひとまずお知らせします
snow_monkrey_template_part_render_
→snow_monkey_template_part_render_
※monkreyになっているので、そこをmonkeyにする
♥ 2Who liked: No user2021年2月3日 9:29 AM #66987返信が含まれるトピック: 一覧の表示項目を変更したい
結構聞かれることが多いので、いくつか思いつくやり方をここで書いておきたいと思います。
CSS で消す
単純に CSS で消す方法です。これが一番手軽で後方互換性的にも問題が起こりにくいのではないかと思います。
.c-entry-summary__meta { display: none; }
snow_monkey_get_template_part_args_{slug} フィルターフックで消す
テンプレートパーツの引数を書き換える方法です。メタ情報を表示するかどうかは
template-parts/loop/entry-summary.php
の_display_meta
という引数で制御されているので、そこをfalse
に書き換えることでメタ情報が表示されなくなります。add_filter( 'snow_monkey_get_template_part_args_template-parts/loop/entry-summary', function( $args ) { $args['vars']['_display_meta'] = false; return $args; } );
snow_monkey_template_part_render_{slug} フィルターフックで消す
テンプレートパーツの HTML を書き換える方法です。メタ情報のテンプレートパーツ
template-parts/loop/entry-summary/meta/meta.php
の HTML を空(ここではfalse
にしていますがコールバック関数内でreturn
とかでも OK)にすることでメタ情報を非表示にしています。add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary/meta/meta', '__return_false' );
snow_monkey_get_template_part_{slug} アクションフックで消す
テンプレートパーツの HTML を定義する方法です。↑のフィルターフックと似ていますが、違うのは↑はあくまで「既存のテンプレートパーツの書き換え」ですが、これは「テンプレートパーツのファイルをつくらずにテンプレートの中身を定義する」というところです。メタ情報のテンプレートパーツ
template-parts/loop/entry-summary/meta/meta.php
の HTML を空(ここではfalse
にしていますがコールバック関数内でreturn
とかでも OK)にすることでメタ情報を非表示にしています。add_action( 'snow_monkey_get_template_part_template-parts/loop/entry-summary/meta/meta', '__return_false' );
参考:
♥ 1Who liked: No user2021年2月3日 9:18 AM #66985返信が含まれるトピック: カスタム投稿一覧ページにテキストを追加したい
HTML の内容を書き換えるフィルターフックは
snow_monkey_template_part_render_テンプレートのスラッグ
となります。一覧部分のサムネイルのテンプレートを書き換えたい場合は
snow_monkey_template_part_render_template-parts/loop/entry-summary/figure/figure
です。また、一覧部分のサムネイル用のテンプレートには
</header>
が無いので</header>
を対象に置換しようとしても機能しません。return
のところをreturn $html . $cv_comment;
に書き換えるとどうでしょうか?
これで動かないようだったら調査してみます!
♥ 0Who liked: No user2021年2月2日 10:31 AM #66875返信が含まれるトピック: トップにフル幅のスライダーを設置して、その下にロゴとヘッダーを設置したい。
あ、ショートコードだと
do_shortcode()
関数で囲まないと実行されないかもです。 これでどうですかね?add_filter( 'snow_monkey_template_part_render_header', function( $html ) { // トップページ以外のときは追加しない if ( ! is_front_page() ) { return $html; } return do_shortcode( '[metaslider id="388"]' ) . $html; } );
♥ 0Who liked: No user2021年2月1日 9:14 PM #66848返信が含まれるトピック: トップにフル幅のスライダーを設置して、その下にロゴとヘッダーを設置したい。
Metasliderというプラグインでスライダーを作成してみました。
そしてショートコードを該当の位置に入力したのですが、
ショートコード自体が表示されてスライダーが表示されませんでした。phpの知識が無く恐縮なのですが、私のショートコードの入力方法はあっておりますでしょうか。
add_filter( 'snow_monkey_template_part_render_header', function( $html ) { // トップページ以外のときは追加しない if ( ! is_front_page() ) { return $html; } ob_start(); // 追加するコンテンツを記述 ?> [metaslider id="388"] <!--?php <br ?--> return ob_get_clean() . $html; } );
♥ 0Who liked: No user2021年2月1日 1:42 PM #66815返信が含まれるトピック: トップにフル幅のスライダーを設置して、その下にロゴとヘッダーを設置したい。
– ヘッダーは2行に設定
– ヘッダー位置はノーマルに設定
– スライダーを何らかのプラグインで作成として、
下記のコードを My Snow Monkey プラグインもしくは子テーマの
functions.php
に追加でいけると思います。add_filter( 'snow_monkey_template_part_render_header', function( $html ) { // トップページ以外のときは追加しない if ( ! is_front_page() ) { return $html; } ob_start(); // 追加するコンテンツを記述 ?> ここにスライダーの HTML やショートコードなど <?php return ob_get_clean() . $html; } );
♥ 0Who liked: No user2021年1月22日 5:38 PM #66080返信が含まれるトピック: 任意のタクソノミーブロックで表示される投稿の投稿者を削除したい
キタジマ様
一応確認ですが、投稿者の HTML を削除するのは「任意のタクソノミーブロック」だけで、カテゴリーアーカイブページの一覧部分からは消さないということであっていますでしょうか?
投稿者のHTMLはカテゴリーアーカイブページの一覧部分、投稿記事メタ情報などすべてから削除したいのです。
なお、カテゴリーアーカイブページの一覧部分については以前にキタジマ様からフックを教えていただきましたので削除出来ております。
また、投稿記事メタ情報部分については、本フォーラムの過去記事に該当するフックが紹介されておりましたのでこれも削除出来ております。
後は、固定ページに作成した任意のタクソノミーブロックにのみ投稿者が表示されていますので、これを削除したいということです。
一応現在のフックを掲載しますので、問題点などありましたらご指摘いただけますと助かります。
/** * 投稿ページのメタ情報の投稿者を削除 */ add_action( 'snow_monkey_entry_meta_items', function() { remove_action( 'snow_monkey_entry_meta_items', 'snow_monkey_entry_meta_items_author', 30 ); }, 9 ); /** * カテゴリーページの投稿者を削除 */ add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary/meta/meta', function( $html, $name, $vars ) { // カテゴリーアーカイブ表示時、かつ記事一覧部分のとき. if ( is_category() && 'archive' === $vars['_context'] ) { return preg_replace( '| <ul> <li class="c-meta__item c-meta__item--author">.*?</li> </ul> |ms', '', $html ); } return $html; }, 10, 3 );
よろしくお願いいたします。
♥ 0Who liked: No user2021年1月22日 4:02 PM #66075返信が含まれるトピック: カスタム投稿のアーカイブ(記事一覧)で、タイトルの下にカスタムフィールドの内容を表示する
サニタイズの視点、完全に飛んでましたので助かります。
esc_htmをつかって、下記のようなカスタマイズとして利用させていただきます。
ありがとうございます!add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary', //entry-summary-postが対象 function( $html ) { if (get_post_type() === 'item'): //カスタム投稿 itemに限定する // 以降の出力を変数に格納する ob_start(); ?> <div class="price__wrapper"> <p>税込<?php echo esc_html(number_format(get_field('price'))); ?>円</p> </div> <?php // 変数に格納 $kw_price = ob_get_clean(); // </header>を書き換える return str_replace( '</header>', '</header>'.$kw_price, $html ); endif; return $html; } );
2021年1月22日 3:15 PM #66067返信が含まれるトピック: グローバルメニューの上にメッセージ画像を表示させたい。
一応下記のコードでグローバルナビゲーションの上に「あいうえお」という文字列を追加できるのですが、グローバルナビゲーションのテンプレートパーツは普通のグローバルナビゲーションだけではなくドロップナビゲーション(スクロールしたら上からにゅっとでてくるナビゲーション)にも流用しているので、そちらにも文字列が表示されてしまいます…。
add_filter( 'snow_monkey_template_part_render_template-parts/nav/global', function( $html, $name, $vars ) { ?> あいうえお <?php return ob_get_clean() . $html; }, 10, 3 );
v13.0.0 からは判別してどちらか片方に出せるようにしようと思いますが、お急ぎであればとりあえず上記で追加しておいて、ドロップナビゲーションのほうは CSS で消しておくのが良いかもしれません…。
♥ 2Who liked: No user2021年1月20日 10:37 AM #65852返信が含まれるトピック: インフィード広告が表示されない
コード書いてみました。こんな感じでどうでしょうか?
/** * 投稿の一覧ページで、記事一覧レイアウトが simple のときにインフィード広告を表示 */ add_filter( 'snow_monkey_template_part_render_template-parts/archive/entry/content/content', function( $html, $name ) { $infeed_ads = get_option( 'mwt-google-infeed-ads' ); if ( ! $infeed_ads ) { return $html; } $entries_layout = get_theme_mod( $name . '-entries-layout' ); if ( 'post' !== $name ) { return $html; } if ( ! in_array( $entries_layout, [ 'simple' ], true ) ) { return $html; } $count = 0; return preg_replace_callback( '|(<li class="c-entries__item)|s', function( $matches ) use ( &$count, $infeed_ads ) { $count ++; if ( 0 !== $count % 4 ) { return $matches[0]; } ob_start(); ?> <li class="c-entries__item"> <?php \Inc2734\WP_Adsense\Helper::the_adsense_code( $infeed_ads ); ?> </li> <?php return ob_get_clean() . $matches[0]; }, $html ); }, 10, 2 );
♥ 0Who liked: No user2021年1月20日 6:39 AM #65836返信が含まれるトピック: 画面の上部に3列目のメニューを表示する
ob_start()を知らなかったので勉強になりました。
当初理解できなかったのですが、昨日の配信で
・snow_monkey_template_part_render_<slug>
・str_replace
に触れてらっしゃったのでどのような処理かわかりました。記載いただいたようにするとheaderとして上部固定などもできるようになりました。
お手数おかけしました。ありがとうございました。♥ 1Who liked: No user2021年1月19日 9:32 AM #65764返信が含まれるトピック: 画面の上部に3列目のメニューを表示する
もしヘッダー位置が「ノーマル」であればこれでも見え方は変わらないと思いますが、ちゃんと「ヘッダーの中」にメニューを入れたいのであれば
snow_monkey_template_part_render_header
フックでヘッダーの HTML を書き換える形でヘッダーの中にメニューを入れるのが良いと思います(ヘッダーの内側にはアクションフックが無いので、この HTML 書き換えようフックで代用しています)。add_filter( 'snow_monkey_template_part_render_header', function( $html ) { // 以降の出力を変数に格納する ob_start(); ?> <div class="kw-nav__wrapper"> <?php wp_nav_menu( array( 'theme_location' => 'kw-nav', // 指定した位置 'container' => 'kw-nav', 'container_class' => 'kw-nav', 'container_id' => 'kw-nav-wrap', 'fallback_cb' => '' ) ); ?> </div> <?php // 変数に格納 $menu = ob_get_clean(); // ヘッダーの </header> の前にメニューを追加 return str_replace( '</header>', $menu . '</header>', $html ); } );
♥ 2Who liked: No user2021年1月9日 1:16 PM #65065返信が含まれるトピック: 関連記事の記事タイトルを 2行目以降は表示せずに「…」にしたい
My Snow Monkey プラグインに下記のコードを貼り付けてみてください。
add_filter( 'snow_monkey_template_part_render_template-parts/loop/entry-summary/title/title', function( $html, $name, $vars ) { // 関連記事のとき if ( 'snow-monkey/related-posts' === $vars['_context'] ) { // テキスト部分を抽出 $text = trim( strip_tags( $html ) ); // タイトル(タグを含む)のテキスト部分を、トリミングしたテキストに置換 return str_replace( $text, mb_strimwidth( $text, 0, 10, '…' ), // 抽出したテキストをトリミング $html ); } return $html; }, 10, 3 );
「2行目以降」という指定はできないので、切り取る長さを調整してみてください(
mb_strimwidth
の10
の部分)。あと、僕はサイトを何度も拝見しているのでだいたいなにがどこにあるのかわかりますが、初見の人は「関連記事はどこにあるの?」となってしまう場合があると思いますので、【当該サイトのURL】にはトップページの URL ではなくそのトピックの内容(今回であれば関連記事)が確認できる URL を書いていただければと思います!
♥ 0Who liked: No user2020年12月24日 12:44 AM #64096返信が含まれるトピック: 旧バージョンのSnow monkeyで、投稿ページのシェアボタンエリアにボタンを追加したい
v6系には
snow_monkey_template_part_render_{slug}
のフックがまだ無かった頃ですね。なので…
snow_monkey_template_part_render
を使用する形になります。add_filter( 'snow_monkey_template_part_render', function( $html, $slug, $name, $vars ) { if ( $slug === 'template-parts/content/share-buttons' ) { 元々のフックの間のコードをここに記述してください } }, 10, 4 );
で一度試していただけますか?。
少し、v6.2.1ピッタリ + PDFボタンが動作するような環境構築を今直ぐにできなかったので、v6系の似たような環境で確認しました程度になってます。
もし、上手くいかない場合は再度返信の形でお願いしますー。♥ 1Who liked: No user -
投稿者検索結果