「snow_monkey_template_part_render」の検索結果

15件の結果を表示中 - 136 - 150件目 (全240件中)
  • 投稿者
    検索結果
  • #65764
    アバター画像キタジマ タカシ
    参加者
    2461

    もしヘッダー位置が「ノーマル」であればこれでも見え方は変わらないと思いますが、ちゃんと「ヘッダーの中」にメニューを入れたいのであれば 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
    		);
    	}
    );
    2
    いいねをした人: 居ません
    アバター画像キタジマ タカシ
    参加者
    2461

    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_strimwidth10 の部分)。

    あと、僕はサイトを何度も拝見しているのでだいたいなにがどこにあるのかわかりますが、初見の人は「関連記事はどこにあるの?」となってしまう場合があると思いますので、【当該サイトのURL】にはトップページの URL ではなくそのトピックの内容(今回であれば関連記事)が確認できる URL を書いていただければと思います!

    0
    いいねをした人: 居ません
    Kmical Lights
    閲覧者
    235

    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系の似たような環境で確認しました程度になってます。
    もし、上手くいかない場合は再度返信の形でお願いしますー。

    1
    いいねをした人: 居ません
    アクツ
    参加者
    168

    返答ありがとうございます!
    どういった内容を出したい(あとハンバーガーボタン寄りなのかロゴ寄りなのか等)にもよりますが、下記のコードでハンバーガー前に任意のものを出力できるかと思います。

    
    add_filter(
    	'snow_monkey_template_part_render_template-parts/header/hamburger-btn',
    	function( $html, $name, $vars ) {
    		$add_html = '<div class="hoge">こちらにでるよ!</div>';
    		return $add_html.$html;
    	}
    );

    ※カスタマイズ > ページ速度最適化 項目でヘッダーをキャッシュ をON している場合は、コード設定後キャッシュを削除で削除ください

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

    こんな感じでどうですかね?

    add_filter(
    	'snow_monkey_template_part_render_template-parts/content/share-buttons',
    	function( $html ) {
    		// シェアボタンの最後にボタンを追加
    		$new_buttons = '<li class="wp-share-buttons__item"><a href="https://lin.ee/DsJhUZL"><img src="https://scdn.line-apps.com/n/line_add_friends/btn/ja.png" alt="友だち追加" height="36" border="0" /></a></li>';
    		if ( function_exists( 'pf_show_link' ) ) {
    			$new_buttons .= pf_show_link();
    		}
    
    		return str_replace(
    			'</ul>',
    			$new_buttons . '</ul>',
    			$html
    		);
    	},
    	10,
    	2
    );
    0
    いいねをした人: 居ません
    #62016
    アバター画像キタジマ タカシ
    参加者
    2461

    おそくなってすみません!

    CSS で調整が必要になると思いますが、とりあえずボタンを追加するコードを書いてみました。My Snow Monkey プラグインか子テーマの functions.php にコードを追加してみてください。

    add_filter(
    	'snow_monkey_template_part_render_template-parts/content/share-buttons',
    	function( $html ) {
    		// シェアボタンの最後にボタンを追加
    		return str_replace(
    			'</ul>',
    			'<li class="wp-share-buttons__item"><a href="https://lin.ee/DsJhUZL"><img src="https://scdn.line-apps.com/n/line_add_friends/btn/ja.png" alt="友だち追加" height="36" border="0" /></a></li></ul>',
    			$html
    		);
    	},
    	10,
    	2
    );

    上記は LINE のボタンだけ追加しているので、</ul> の前に <li class="wp-share-buttons__item">PDF追加ボタン</li> を追加することでさらにボタンを増やせます。

    0
    いいねをした人: 居ません
    #62005
    Kmical Lights
    閲覧者
    235

    簡単にやるなら
    <i class="fa fa-angle-right" aria-hidden="true"></i>を「次へ」という文字列に置換。
    <i class="fa fa-angle-left" aria-hidden="true"></i>を「前へ」という文字列に置換。
    そして、CSS で数字の部分をdisplay: noneで非表示にし、左右のボタンのスタイルを調整する形でしょうか。

    文字列置換に関しては、my snow monkey で

    
    add_filter( 'inc2734_wp_basis_posts_pagination_args', function( $_args ) {
      $_args['mid_size'] = 0;
      return $_args;
    } );
    add_filter( 'snow_monkey_template_part_render_template-parts/archive/pagination', function( $_html, $_name, $_vars ) {
      $_html = str_replace(
        '<i class="fa fa-angle-right" aria-hidden="true"></i>',
        '次へ',
        $_html
      );
      $_html = str_replace(
        '<i class="fa fa-angle-left" aria-hidden="true"></i>',
        '前へ',
        $_html
      );
      return $_html;
    }, 10, 3 );

    かなと。

    数値を消すとかのスタイルは、下記のCSSを参考に調整してみてください。

    .c-pagination__item-link,
    .c-pagination__item current {
      display:none;
    }
    .c-pagination__item-prev,
    .c-pagination__item-next {
      display: inline-block;
    }

    @ キタジマさん
    ページャーの呼び出しって、inc2734ライブラリの範囲なので…これってSnow Monkeyなやり方では綺麗に書けないんじゃ…と。

    とりあえず、テンプレート上書きとかしにくい範囲かなと思いますが、…ゴリ押しテンプレート置換するならDOMパーサーかなーって事で、別なページャースタイルにする方法も下記に書いときます…。
    (上級者向けのコードです。読めない・解らないなら、やらない方がいいです)

    
    class Pager {
    
    	function __construct() {
    		add_filter( 'inc2734_wp_basis_posts_pagination_args', [ __CLASS__, '_posts_pagination_args' ] );
    		add_filter( 'snow_monkey_template_part_render_template-parts/archive/pagination', [ __CLASS__, '_render_pagination' ], 10, 3 );
    	}
    
    	static function _posts_pagination_args( $_args ) {
    		$_args['mid_size'] = 0;
    		return $_args;
    	}
    
    	static function _render_pagination( $_html, $_name, $_vars ) {
    		global $wp_query;
    		global $paged;	// 現在のページ値
    
    		$_links = [];
    
    		$_paged = ( $paged >= 2 ) ? $paged : 1;
    		$_navigation_html = '<span class="kt-pagination-text">' .
    			$_paged . 'ページ (' . $wp_query->max_num_pages . 'ページ中)' .
    		'</span>';
    
    		$_html = preg_replace(
    			'/<span (.*)<\/span>/',
    			'',
    			$_html
    		);
    
    		$_domDocument = new \DOMDocument();
    		$_pre_use = libxml_use_internal_errors( true );
    		$_domDocument->loadHTML( '<?xml encoding="UTF-8">' . $_html );
    		libxml_clear_errors();
    		libxml_use_internal_errors( $_pre_use );
    		$_xPath = new \DOMXPath( $_domDocument );
    
    		$count = 0;
    		foreach ( $_xPath->query( '//div[@class="nav-links"]/a' ) as $_node ) {
    			if ( $_paged === 1 ) {
    				switch ( $count ) {
    					case 0 :
    						$_node->nodeValue = '最後のページ';
    						break;
    				}
    			} else {
    				switch ( $count ) {
    					case 1 :
    						$_node->nodeValue = '最初のページ';
    						break;
    					case 2 :
    						$_node->nodeValue = '最後のページ';
    						break;
    				}
    			}
    			$_links[] = $_node->ownerDocument->saveHTML( $_node );
    			$count++;
    		}
    
    		$_links = self::replace_array( $_links, 0, 1 );
    		if ( count( $_links ) === 4 ) {
    			$_links = self::replace_array( $_links, 3, 2 );
    		}
    
    		$_links_html = '';
    		foreach ( $_links as $_link ) {
    			$_links_html .= $_link;
    		}
    
    		$_html = preg_replace(
    			'/<div class="nav-links">(.*)<\/div>/s',
    			'<div class="nav-links">' . $_links_html . '</div>' . $_navigation_html,
    			$_html
    		);
    
    		return $_html;
    	}
    
    	private static function replace_array( $_items, $_position, $_new_position ) {
    		$_new_items = $_items;
    		$_old_item = $_new_items[$_position];
    		unset( $_new_items[$_position] );
    		array_splice( $_new_items, $_new_position, 0, $_old_item );
    
    		return $_new_items;
    	}
    
    }
    

    こんな風になるかと。

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

    これでどうでしょう?

    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(
    				'|<li class="c-meta__item c-meta__item--author">.*?</li>|ms',
    				'',
    				$html
    			);
    		}
    		return $html;
    	},
    	10,
    	3
    );

    上記で HTML ごと消えると思いますが、互換性を考えると CSS のほうが安定度は高いかなぁとは思います。

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

    あれ、すみません。コード書き直してみました。先のコードは消して、下記に差し替えてください。

    add_filter(
    	'snow_monkey_template_part_render_template-parts/archive/entry/content/content',
    	function( $html ) {
    		$post_type      = get_post_type() ? get_post_type() : 'post';
    		$post_type      = is_home() ? 'post' : $post_type;
    		$entries_layout = get_theme_mod( $post_type . '-entries-layout' );
    
    		if ( 'post' !== $post_type ) {
    			return $html;
    		}
    
    		if ( 'simple' !== $entries_layout ) {
    			return $html;
    		}
    
    		$count = 0;
    
    		return preg_replace_callback(
    			'|(<li class="c-entries__item)|s',
    			function( $matches ) use ( &$count ) {
    				$add = '';
    
    				if ( 5 === $count ) {
    					ob_start();
    					?>
    					画像1
    					<?php
    					$add = ob_get_clean();
    				} elseif ( 10 === $count ) {
    					ob_start();
    					?>
    					画像2
    					<?php
    					$add = ob_get_clean();
    				} elseif ( 15 === $count ) {
    					ob_start();
    					?>
    					画像3
    					<?php
    					$add = ob_get_clean();
    				} elseif ( 20 === $count ) {
    					ob_start();
    					?>
    					画像4
    					<?php
    					$add = ob_get_clean();
    				} elseif ( 25 === $count ) {
    					ob_start();
    					?>
    					画像5
    					<?php
    					$add = ob_get_clean();
    				}
    
    				if ( $add ) {
    					ob_start();
    					?>
    					<li class="c-entries__item"><?php echo wp_kses_post( $add ); ?></li>
    					<?php
    					$add = ob_get_clean();
    				}
    
    				$count ++;
    				return $add . $matches[0];
    			},
    			$html
    		);
    
    		return $html;
    	}
    );
    0
    いいねをした人: 居ません
    #61129
    アバター画像キタジマ タカシ
    参加者
    2461

    ショートコードの定義をしている部分のコードをこれに置き換えてください!

    add_shortcode(
    	'search_form',
    	function() {
    		ob_start();
    		\Framework\Helper::get_template_part( 'template-parts/common/search-form' );
    		return ob_get_clean();
    	}
    );

    get_template_part() ではなく \Framework\Helper::get_template_part() にすることで、snow_monkey_template_part_render フィルターフックによるカスタマイズが適用されるようになります。

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

    これでどうでしょう?

    add_filter(
    	'snow_monkey_template_part_render_template-parts/common/search-form',
    	function( $html ) {
    		return str_replace(
    			'>検索<',
    			'><i class="fas fa-search"></i><',
    			$html
    		);
    	}
    );
    0
    いいねをした人: 居ません
    #60999
    アバター画像キタジマ タカシ
    参加者
    2461

    ウィジェットで管理はわかりませんが、画像を突っ込むこと自体はできます。下記のコードを試してみてください。

    /**
     * ブログ一覧に画像を追加する処理
     */
    function my_infeed_img( $html, $post_types, $entries_layout ) {
    	// 投稿タイプが post 以外のときは中止
    	$post_types = (array) $post_types;
    	if ( ! in_array( 'post', $post_types, true ) ) {
    		return $html;
    	}
    
    	// 一覧レイアウトが「シンプル」以外のときは中止
    	if ( 'simple' !== $entries_layout ) {
    		return $html;
    	}
    
    	$count = 0;
    
    	return preg_replace_callback(
    		'|(<li class="c-entries__item)|s',
    		function( $matches ) use ( &$count ) {
    			$count ++;
    			if ( 0 !== $count % 6 ) {
    				return $matches[0];
    			}
    
    			ob_start();
    			?>
    			<li class="c-entries__item">
    				ここに画像
    			</li>
    			<?php
    			return ob_get_clean() . $matches[0];
    		},
    		$html
    	);
    }
    
    /**
     * ブログ一覧ページに画像を追加して表示
     */
    add_filter(
    	'snow_monkey_template_part_render_template-parts/archive/entry/content/content',
    	function( $html ) {
    		$post_type      = get_post_type() ? get_post_type() : 'post';
    		$post_type      = is_home() ? 'post' : $post_type;
    		$entries_layout = get_theme_mod( $post_type . '-entries-layout' );
    
    		return my_infeed_img( $html, $post_type, $entries_layout );
    	}
    );
    0
    いいねをした人: 居ません
    #60945
    rumix63
    参加者
    8

    お忙しいところご返信頂きありがとうございます!

    大変申し訳ありません、情報不足でした。

    My Snow Monkeyに

    1. 検索フォームを表示するショートコードをつくる
    2. ショートコードをヘッダーコンテンツで実行可能にする
    3. ヘッダーコンテンツにショートコード [search_form] を入れる

    /**
     * [search_form] で検索フォームを表示
     */
    add_shortcode(
    	'search_form',
    	function() {
    		ob_start();
    		get_template_part( 'template-parts/common/search-form' );
    		return ob_get_clean();
    	}
    );
    
    /**
     * ヘッダーコンテンツ内でショートコードを実行可能に
     */
    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug ) {
    		if ( 'template-parts/header/content' !== $slug ) {
    			return $html;
    		}
    		return do_shortcode( $html );
    	},
    	10,
    	2
    );

    ↑こちらの方法でヘッダーコンテンツ内に検索フォームを表示させています。

    その際に右側の検索ボタンを「検索」という文言ではなく、Fontawsomeアイコンを挿入したいと思っております。

    恐れ入りますが、ご教授頂ければと思います。

    よろしくお願いします。

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

    返信が含まれるトピック: 投稿一覧ページのデザイン変更について

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

    @井上さま
    あるカスタム投稿タイプのアーカイブページの .p-archive > .c-entries の部分に任意のクラスを追加したいということであっていますか?であれば、下記のコードの追加で実現できます。My Snow Monkey プラグインか子テーマの functions.php に貼り付けてみてください。

    add_filter(
    	'snow_monkey_template_part_render_template-parts/archive/entry/content/content',
    	function( $html, $name ) {
    		// カスタム投稿タイプ news のカスタム投稿アーカイブのとき
    		if ( 'news' === $name ) {
    			// my-class というクラスを追加
    			return str_replace( 'c-entries ', 'c-entreis my-class ', $html );
    		}
    		return $html;
    	},
    	10,
    	2
    );

    もしクラスの追加程度ではなくて、一覧部分の HTML をまるっと別物にしたいという場合は、Olein さんが書かれているようにテンプレートの置換や追加が必要になるかと思います。

    1
    いいねをした人: 居ません
    #59811

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

    *****
    [ プライベートトピックのため非表示 ]
    0
    いいねをした人: 居ません
15件の結果を表示中 - 136 - 150件目 (全240件中)

ドキュメント

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

ドキュメント

フォーラム

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

サポートフォーラム

よくあるご質問

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

よくあるご質問

お問い合わせ

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

お問い合わせ

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