「snow_monkey_template_part_render」の検索結果

15件の結果を表示中 - 181 - 195件目 (全245件中)
  • 投稿者
    検索結果
  • #54197
    アバター画像キタジマ タカシ
    参加者
    2536

    こんな感じでどうでしょう?

    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug ) {
    		if ( 'template-parts/content/share-buttons' === $slug ) {
    			// URL の書き換え
    			$html = str_replace(
    				'https://timeline.line.me/social-plugin/share',
    				'https://line.me/R/msg/text/',
    				$html
    			);
    
    			// アイコンの差し替え
    			$html = preg_replace(
    				'|(<span class="wp-share-button__icon wp-share-button__icon--line">).+?(<\/span>)|ms',
    				'$1あいうえお$2', // 「あいうえお」のところを svg や img に
    				$html
    			);
    		}
    		return $html;
    	},
    	10,
    	2
    );
    1
    いいねをした人: 居ません
    #54099
    Kmical Lights
    閲覧者
    235

    下記のコードは、検索一覧のコンテンツ部分を差し替える一例です。ご参考にどうぞ。

    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug, $name, $vars ) {
    // 検索ページの時に差し替える為の条件式
    		if ( is_search() && 'templates/view/archive' === $slug && 'search' === $name ) {
    // ここから参考ページのように設定
    			if ( empty( get_search_query() ) ) { // 検索ワードが空なら
    				$html = '<div class="c-entry"><p>検索キーワードが未入力です。</div>'; // 表示するhtmlを代入
    			}
    		}
    		return $html;
    	}
    	,
    	10,
    	4
    );

    サイドバーなども表示されなくなるかもしれません。
    その際は、htmlをDOM操作する形で適度に書き換えるのがベストと思います。

    また、検索結果と言うのがページタイトルとパンくずでふさわしくない形になるので、それらも差し替えた方が良いのであれば、下記のコードを参考にしてください。

    add_filter(
    	'document_title_parts',
    	function($title_parts) {
    		if ( is_search() && empty( get_search_query() ) ) {
    			$title_parts['title'] = '検索キーワードが未入力です';// ページタイトルを変える
    		}
    		return $title_parts;
    	},
    	9,
    	1
    );
    
    add_filter( 'snow_monkey_breadcrumbs',
    	function( $items ) {
    		if ( is_search() && empty( get_search_query() ) ) {
    			$items[count( $items ) - 1]['title'] = '検索キーワードが未入力です';
    		}
    		return $items;
    	},
    	9,
    	1
    );
    1
    いいねをした人: 居ません
    #53492
    アバター画像キタジマ タカシ
    参加者
    2536

    まず、

    /**
     * パララックスエフェクト用の CSS, JS を読み込み
     *
     * @return void
     */
    add_action(
      ...
    );

    /**
     * パララックスエフェクト用の CSS, JS を読み込み
     *
     * @return void
     */
    add_action(
    	'wp_enqueue_scripts',
    	function() {
    		if ( ! wp_script_is( 'snow-monkey-blocks/background-parallax', 'registered' ) ) {
    			wp_enqueue_script(
    				'snow-monkey-blocks/background-parallax',
    				SNOW_MONKEY_BLOCKS_DIR_URL . '/dist/js/background-parallax.js',
    				[],
    				filemtime( SNOW_MONKEY_BLOCKS_DIR_PATH . '/dist/js/background-parallax.js' ),
    				true
    			);
    		}
    	}
    );

    に置き換えてください。

    次に、

    inc2734_view_controller_template_part_render
    

    snow_monkey_template_part_render
    

    に置き換えてください!

    注意点として、Snow Monkey Blocks が必須になります。試してみてください!

    0
    いいねをした人: 居ません
    #53124

    返信が含まれるトピック: 記事一覧の表示を全文表示に変更したい

    アバター画像キタジマ タカシ
    参加者
    2536

    一応下記のコードで全文表示にできることはできました。My Snow Monkey プラグインに貼り付けてみてください。

    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug, $name ) {
    		if ( 'template-parts/loop/entry-summary' === $slug && 'rss' !== $name ) {
    			// リンクの開始タグを削除
    			$html = preg_replace( '|<a href="[^"]+?">\s*?(<section class="c-entry-summary)|ms', '$1', $html );
    			// リンクの終了タグを削除
    			$html = preg_replace( '|(</section>)\s*</a>$|ms', '$1', $html );
    		} elseif ( 'template-parts/loop/entry-summary/content/content' === $slug && 'rss' !== $name ) {
    			ob_start();
    			?>
    			<div class="c-entry-summary__content p-entry-content">
    				<?php the_content(); ?>
    			</div>
    			<?php
    			$html = ob_get_clean();
    		}
    		return $html;
    	},
    	10,
    	3
    );

    ただ、全文表示を想定したつくりにはなっていないので、例えばブロックを全幅や幅広にしたりしているとずれたりすると思います。ごくごくシンプルな文章と画像を並べただけの記事なら問題は少ないと思いますが、それ以上のことをやっていると微妙かもしれません…。

    0
    いいねをした人: 居ません
    #52427
    クラのこ
    閲覧者
    2

    なるほど、調査ありがとうございます!!

    そちらの構文の方がわかりやすいですね。
    テンプレート変更・変数変更と似てますし。

    以下のように修正して重複出力を解決できました!

    function custom_template__loop_entry_summary_meta_meta__remove_author() {
      ?>
        <div class="c-entry-summary__meta">
          <ul class="c-meta">
            <li class="c-meta__item c-meta__item--published">
              <?php the_time( get_option( 'date_format' ) ); ?>
            </li>
          </ul>
        </div>
      <?php
    }
    
    add_filter(
      'snow_monkey_template_part_render',
      function( $html, $slug ) {
        if ( 'template-parts/loop/entry-summary/meta/meta' === $slug ) {
          return custom_template__loop_entry_summary_meta_meta__remove_author();
        }
        return $html;
      },
      10,
      2
    );

    この方法で対応可能なので、アップデートではなく記事修正で良いかと思いました!

    0
    いいねをした人: 居ません
    #52411
    アバター画像キタジマ タカシ
    参加者
    2536

    snow_monkey_get_template_part_xxxx アクションフックはinc2734_view_controller_get_template_part_xxxx アクションフックをラップしたものなのですが、アクションフックのラップはフィルターフックのラップと違ってちょっと工夫が必要なようで、それが不足していたために何度もコールバックが追加されてしまうという感じになっていました。次のアップデートでコールバックは1つまでしか追加されないようにしようと思いますが、別なフックで対応したほうがいろいろわかりやすいかもしれません…。

    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug ) {
    		if ( 'template-parts/loop/entry-summary/meta/meta' === $slug ) {
    			return 'hoge';
    		}
    		return $html;
    	},
    	10,
    	2
    );
    0
    いいねをした人: 居ません
    #52374

    返信が含まれるトピック: *****

    *****
    [ プライベートトピックのため非表示 ]
    0
    いいねをした人: 居ません
    #52112
    アバター画像キタジマ タカシ
    参加者
    2536

    Snow Monkey のテンプレート変数($args)の仕組みをコメントフォーム部分に追加したとしても、コアのフックをラップする形になるだけで特にラクにはならないのでは?という気がするのですがどうでしょう。ちょっと僕には最終的にどうなったら良さそうなのかが見えてないです…。

    template-parts/discussion/comments.php から、

    <?php comment_form(); ?>
    

    の部分を別のテンプレートに切りだすだけでも多少マシだったりしますかね? snow_monkey_template_part_render での書き換えやすさはマシになるかなと思ったのですが…。

    0
    いいねをした人: 居ません
    アバター画像キタジマ タカシ
    参加者
    2536

    情報ありがとうございます! こんな感じでどうでしょう?

    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug, $name, $vars ) {
    		if ( 'news' !== get_post_type() ) {
    			return $html;
    		}
    
    		if ( 'template-parts/loop/entry-summary/title/title' === $slug ) {
    			$title_tag = $vars['_title_tag'];
    
    			return sprintf(
    				'<%1$s class="c-entry-summary__title">%2$s</%1$s>',
    				esc_html( $title_tag ),
    				esc_html( get_post_meta( get_the_ID(), 'title', true ) )
    			);
    		} elseif ( 'template-parts/loop/entry-summary/content/content' === $slug ) {
    			return sprintf(
    				'<div class="c-entry-summary__content">%1$s</div>',
    				esc_html( get_post_meta( get_the_ID(), 'content', true ) )
    			);
    		}
    
    		return $html;
    	},
    	10,
    	4
    );

    'news' !== get_post_type() の部分がカスタム投稿タイプかどうかの判定になります。news の部分をご自身のカスタム投稿タイプ名にあわせて変えてください。

    get_post_meta( get_the_ID(), 'title', true ) がタイトル部分のカスタムフィールドの出力になります。title の部分をご自身のカスタムフィールド名にあわせて変えてください。

    get_post_meta( get_the_ID(), 'content', true ) がグレー文字部分のカスタムフィールドの出力になります。content の部分をご自身のカスタムフィールド名にあわせて変えてください。

    2
    いいねをした人: 居ません
    #52011
    アバター画像キタジマ タカシ
    参加者
    2536

    ウィジェットに関してはサムネイルサイズを変更するためのフックを仕込んでいたのですが、確かに一覧や最近の投稿ブロックだと変更できないですね…。次のアップデートでフックを仕込もうと思います。

    お急ぎであれば下記のコードを My Snow Monkey プラグインに貼り付けることで、画像部分の HTML を書き換える形でサイズ変更できます。下記の例ではサイズを medium にしていますが、サムネイルサイズにしたい場合は thumbnail にしてみてください。

    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug, $name ) {
    		if ( 'template-parts/loop/entry-summary/figure/figure' === $slug && 'post' === $name ) {
    			$thumbnail = get_the_post_thumbnail( get_the_ID(), 'medium' );
    			return preg_replace(
    				'|<img [^>]+>|',
    				$thumbnail,
    				$html
    			);
    		}
    		return $html;
    	},
    	10,
    	3
    );
    0
    いいねをした人: 居ません
    #51643
    アバター画像キタジマ タカシ
    参加者
    2536

    下記のコードを My Snow Monkey プラグインに追加してみてください。記事下に表示されるタグ一覧をそのまま表示するようにしています。

    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug, $name ) {
    		if ( 'template-parts/loop/entry-summary' === $slug && 'post' === $name ) {
    			ob_start();
    			\Framework\Helper::get_template_part( 'template-parts/content/entry-tags' );
    			return $html . ob_get_clean();
    		}
    		return $html;
    	},
    	10,
    	3
    );
    0
    いいねをした人: 居ません
    #51608
    アバター画像キタジマ タカシ
    参加者
    2536

    @Kmical Lights さん

    最後に読まれたテンプレート名を取得できるような関数とかあれば、何とかなるかもですが、そう言うのって Snow Monkey のテンプレート系の処理でもやれましたっけ?

    これはないですねー。今回の場合はドロワー内の検索ボックスは

    Helper::get_template_part( 'template-parts/common/search-form', 'drawer' );
    

    で読み込まれているので、snow_monkey_template_part_render でやるのであれば、下記のような感じで絞り込みできます。

    add_filter(
    'snow_monkey_template_part_render',
    	function( $html, $slug, $name ) {
    		if ( 'template-parts/common/search-form' === $slug && 'drawer' === $name ) {
    			return str_replace( ... );
    		}
    		return $html;
    	},
    	10,
    	3
    );
    4
    いいねをした人: 居ません
    アバター画像キタジマ タカシ
    参加者
    2536

    下記のコードを My Snow Monkey に貼り付けてみてください。

    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug ) {
    		if ( 'template-parts/nav/drop' === $slug ) {
    			ob_start();
    			\Framework\Helper::get_template_part( 'template-parts/header/site-branding' );
    			$site_branding = ob_get_clean();
    			$search  = '|(<li class="menu-item)|m';
    			$replace = sprintf( '<li class="c-navbar__item">%1$s</li>', $site_branding );
    			return preg_replace( $search, $replace . '$1', $html, 1 );
    		}
    		return $html;
    	},
    	10,
    	2
    );

    これでドロップナビにロゴは表示されるようになると思うので、あとはお好みでロゴ周りの余白を CSS で調整してください。

    .p-drop-nav .c-site-branding {
      padding-top: 1em;
      padding-bottom: 1em;
    }
    1
    いいねをした人: 居ません
    #49682
    アバター画像キタジマ タカシ
    参加者
    2536

    こんな感じでどうでしょう?

    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug ) {
    		if ( 'template-parts/nav/social' !== $slug ) {
    			return $html;
    		}
    
    		$html = str_replace(
    			'<nav class="p-social-nav" role="navigation">',
    			'<nav class="p-social-nav" role="navigation"><div class="my-social-nav-title"><b>公式SNS</b></div>',
    			$html
    		);
    
    		$html = str_replace(
    			'</nav>',
    			'<div class="my-social-nav-message">最新情報はSNSをチェック</div></nav>',
    			$html
    		);
    
    		return $html;
    	},
    	10,
    	2
    );
    3
    いいねをした人: 居ません
    アバター画像キタジマ タカシ
    参加者
    2536

    すみません、ちょっとうまく管理バーを表示させることができなかったので、あてずっぽうな感じになってしまうのですが、ひとまず下記のコードも追加してみてください。これで解決すると良いのですが…。

    add_action(
    	'wp_enqueue_scripts',
    	function() {
    		wp_enqueue_script(
    			Helper::get_main_script_handle() . '-fix-adminbar',
    			get_theme_file_uri( '/assets/js/fix-adminbar.min.js' ),
    			[],
    			filemtime( get_theme_file_path( '/assets/js/fix-adminbar.min.js' ) ),
    			true
    		);
    	}
    );

    メニュー表示項目をログイン・非ログインやグループ等で変えるのもアクションフックから操作できるのですか?

    Snow Monkey には、テンプレートの内容を書き換える snow_monkey_template_part_render フィルターフックと 、テンプレートの内容をテンプレートではなく functions.php 等でコードで定義できる snow_monkey_get_template_part_<テンプレートパーツ名> アクションフックがあります。これを使って書き換えることはできると思います。

    参考:

    上の返信、ソースコードが見やすくなってるのは、僕も投稿段階でビジュアルエディタで出来ますか?

    ビジュアルエディターはわからないのですが、コードを範囲指定して、テキストエディタのツールバーにある「code」というボタンをクリックするとできます!

    2. ヘッダーサブメニュー、PCだと右上にかっこいいのですが、スマホからだと右上には表示されません。スマホもPCも、左上に表示したいのです。

    あ、そうかスマホではでませんね…。この調整はこの調整で面倒かもなので、先に提示した方法で管理バーの挙動がちゃんとなるのであればそっちのほうが良さそうです。

    0
    いいねをした人: 居ません
15件の結果を表示中 - 181 - 195件目 (全245件中)

ドキュメント

Snow Monkey の設定方法やマニュアルを掲載しています。

ドキュメント

フォーラム

Snow Monkey の使い方やカスタマイズについてのご質問・ご要望等はサポートフォーラムで行っています。サポートフォーラムは誰でも閲覧できますが、書き込みできるのは Snow Monkey 購入者のみとなります。

サポートフォーラム

よくあるご質問

Snow Monkey のサービスについて不明な点がある場合は、まずはよくあるご質問をご確認ください。

よくあるご質問

お問い合わせ

よくあるご質問を見ても解決しなかった場合、試用版の申請については問い合わせフォームからお願いいたします。

お問い合わせ

Snow Monkey は Gutenberg ブロックエディターに対応した 100%GPL の WordPress テーマです。拡張性を意識した開発をおこなっており、カスタマイザーとブロックでスピーディーにサイトを立ち上げるだけでなく、CSS やフックを駆使した高度なカスタマイズにも柔軟に対応できます。