「snow_monkey_get_template_part_args」の検索結果

15件の結果を表示中 - 1 - 15件目 (全109件中)
  • 投稿者
    検索結果
  • TarCoon☆CarToon
    参加者
    57

    因みに修正した、 My Snow Monkeyのphpは以下になります。

    <?php
    /**
     * Plugin name: My Snow Monkey
     * Description: このプラグインに、あなたの Snow Monkey 用カスタマイズコードを書いてください。
     * Version: 0.2.5
     * Update URI: https://snow-monkey.2inc.org
     *
     * @package my-snow-monkey
     * @author inc2734
     * @license GPL-2.0+
     */
    
    /**
     * Snow Monkey bbPress Support でリダイレクトさせないようにする。
     */
    // add_filter( 'snow_monkey_bbpress_support_prevent_admin_access', '__return_false' );
    
    /**
     * Snow Monkey 以外のテーマを利用している場合は有効化してもカスタマイズが反映されないようにする
     */
    $theme = wp_get_theme( get_template() );
    if ( 'snow-monkey' !== $theme->template && 'snow-monkey/resources' !== $theme->template ) {
    	return;
    }
    
    /**
    * Directory url of this plugin
    *
    * @var string
    */
    define( 'MY_SNOW_MONKEY_URL', untrailingslashit( plugin_dir_url( __FILE__ ) ) );
    
    /**
    * Directory path of this plugin
    *
    * @var string
    */
    define( 'MY_SNOW_MONKEY_PATH', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
    
    /**
    * Display message in console.log if this plugin is enabled.
    */
    add_action(
    	'wp_footer',
    	function () {
    		if ( is_user_logged_in() ) :
    			?>
    			<script>console.log( 'My Snow Monkey plugin is active' );</script>
    			<?php
    		endif;
    	}
    );
    
    /**
    * WooCommerce が生成した各ページのページヘッダー画像としてデフォルトページヘッダー画像を使用する
    */
    add_filter(
    	'snow_monkey_pre_page_header_image_url',
    	function( $url ) {
    		if ( class_exists( '\woocommerce' ) && ( is_woocommerce() || is_cart() || is_checkout() || is_account_page() ) ) {
    			if ( is_singular() && has_post_thumbnail() ) {
    				return wp_get_attachment_image_url( get_post_thumbnail_id(), 'xlarge' );
    			} else {
    				$shop_page_id = wc_get_page_id( 'shop' );
    				if ( has_post_thumbnail( $shop_page_id ) ) {
    					return wp_get_attachment_image_url( get_post_thumbnail_id( $shop_page_id ), 'xlarge' );
    				}
    			}
    			return get_theme_mod( 'default-page-header-image' );
    		}
    		return $url;
    	},
    	11
    );
    
    /**
     * WooCommerce が生成した各ページにページヘッダーを表示する
     */
    add_filter(
    	'snow_monkey_is_output_page_header',
    	function( $return ) {
    		if ( class_exists( '\woocommerce' ) && ( is_woocommerce() || is_cart() || is_checkout() || is_account_page() ) ) {
    			return true;
    		}
    		return $return;
    	},
    	11
    );
    
    /**
     * パララックスエフェクト用の 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
    			);
    		}
    	}
    );
    
    /**
     * ページヘッダーにパララックスエフェクトを反映
     *
     * @param string $html
     * @param string $slug
     * @return string
     */
    add_filter(
    	'snow_monkey_template_part_render',
    	function( $html, $slug ) {
    		if ( 'template-parts/common/page-header' !== $slug ) {
    			return $html;
    		}
    
    		$html = str_replace(
    			'class="c-page-header"',
    			'class="c-page-header js-bg-parallax"',
    			$html
    		);
    
    		$html = str_replace(
    			'class="c-page-header__bgimage"',
    			'class="c-page-header__bgimage js-bg-parallax__bgimage"',
    			$html
    		);
    
    		$html = str_replace(
    			'class="c-container"',
    			'class="c-container js-bg-parallax__content"',
    			$html
    		);
    
    		return $html;
    	},
    	10,
    	2
    );
    
    /**
     * ショーケースウィジェットにパララックスエフェクトを反映
     *
     * @param string $content
     * @param array $args
     * @return string
     */
    add_filter(
    	'inc2734_wp_awesome_widgets_render_widget',
    	function( $content, $args ) {
    		if ( false === strpos( $args['widget_id'], 'inc2734_wp_awesome_widgets_showcase' ) ) {
    			return $content;
    		}
    
    		$content = str_replace(
    			'wpaw-showcase ',
    			'wpaw-showcase js-bg-parallax ',
    			$content
    		);
    
    		$content = str_replace(
    			'wpaw-showcase__bgimage',
    			'wpaw-showcase__bgimage js-bg-parallax__bgimage',
    			$content
    		);
    
    		$content = str_replace(
    			'wpaw-showcase__inner',
    			'c-container js-bg-parallax__content wpaw-showcase__inner',
    			$content
    		);
    
    		return $content;
    	},
    	10,
    	2
    );
    
    /**
     * @param array active_post_types
     * @return array
     */
    add_filter(
    	'snow_monkey_member_post_active_post_types',
    	function( $active_post_types ) {
    		return [ 'post', 'page' ]; // 制限機能を付与したい投稿タイプを指定
    	}
    );
    
    /**
     * 再利用可能ブロックのショートカット作成
     */
    add_action( 'admin_menu', 'add_custom_menu' );
    function add_custom_menu(){
    	add_menu_page( '再利用ブロック', '再利用ブロック', 'manage_options', 'edit.php?post_type=wp_block', '', 'dashicons-portfolio', 9 );
    }
    
    /**
     * WordPressのサイドバーなどに表示されるウィジェットのタイトルを「h2」タグから他のタグ(例えば「div」タグ)へ変更する方法
     */
    add_filter(
    	'dynamic_sidebar_params',
    	function( $params ) {
    		$params[0]['before_title'] = str_replace( '<h2 ', '<div ', $params[0]['before_title'] );
    		$params[0]['after_title']  = str_replace( '/h2>', '/div>', $params[0]['after_title'] );
    		return $params;
    	}
    );
    
    /**
     * WooCommerceの商品ページに「SNS」シェアボタンを追加
     */
    add_filter(
    	'snow_monkey_get_template_part_args_templates/view/woocommerce-single-product',
    	function( $args ) {
    		$args['vars']['_display_top_share_buttons'] = true; // 上部に出したいとき
    		$args['vars']['_display_bottom_share_buttons'] = true; // 下部に出したいとき
    		return $args;
    	}
    );
    0
    いいねをした人: 居ません
    アバター画像otomeweb
    参加者
    22

    ごめんなさい 再度ひらいちゃいました
    テーマ、プラグインは最新 今までのやりとりをふまえ以下の様になってます

    やりたいこと

    ・上の一覧では新規に追加されたものが追加順に表示されたい
    現在は新着時期にpickupタグをつけて、スライダーとあわせて一覧している

    ・下の一覧ではZINEというカテゴリー(人間による加筆)があった記事だけを
    更新順(書き換えるから)表示したい
    しかしカテゴリー変更やタグの編集まで更新扱いになってしまって意図と違うリストになる

    現在下記のコードがはいってます。
    更新日、公開日がわからなくなるのでアイコンつけたいです

    改善可能でしょうか?

    /** 
     * 最新用語を更新日でソートする
     */
    
    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/common/entries/entries',
    	function( $args ) {
    		// 最近の投稿ブロックのとき
    		if ( 'snow-monkey-blocks/recent-posts' === $args['vars']['_context'] ) {
    			// 並び順を変更
    			$args['vars']['_posts_query'] = new \WP_Query(
    				array_merge(
    					$args['vars']['_posts_query']->query,
    					array(
    						'orderby' => 'modified',
    						'order'   => 'DESC'
    					)
    				)
    			);
    		}
    		return $args;
    	}
    );
    0
    いいねをした人: 居ません
    #142510

    返信が含まれるトピック: H1タグが空欄になる場合の解決方法

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

    HTML Outline という Chrome 拡張だと、h1 に画像の alt が表示されました。

    実際には h1 の中の画像には alt が設定されているので、h1 の中が空、というわけではないのですが、ツールによって画像を読み取る場合と読み取らない場合があるようです。

    本質的な問題はそのツールで読み取られないから、というより、HTML 的に正しいかどうか、だと思いますので、HTML の仕様、あるいは Google が推奨するドキュメントなどがあれば Snow Monkey を改修したほうが良いのかなと思いました。(軽くググった感じでは明確な記述は見つけきれませんでした)

    ちなみに、下記のコードを My Snow Monkey プラグイン、あるいは子テーマの functions.php に追加することで、フロントページでも div にすることができます。

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/header/site-branding',
    	function( $args ) {
    		$args['vars']['_title_tag'] = 'div';
    		return $args;
    	},
    	100
    );
    1
    いいねをした人:
    #142151
    アバター画像キタジマ タカシ
    参加者
    2421

    もしその認識であっている場合は、My Snow Monkey プラグインか子テーマの functions.php に下記のコードを追加することでタグを表示できると思います(そのカスタム投稿タイプにタグが設定されている場合のみ)。

    add_filter(
    	'snow_monkey_get_template_part_args_templates/view/content',
    	function( $args ) {
    		// 投稿タイプが news のとき
    		if ( 'news' === $args['name'] ) {
    			// 記事下のタグ一覧の表示を有効化
    			$args['vars']['_display_tags'] = true;
    		}
    		return $args;
    	}
    );
    0
    いいねをした人: 居ません
    アバター画像キタジマ タカシ
    参加者
    2421

    調査してみたところ、2つの要因がありました。

    1つ目は、Snow Monkey のパンくずはページのクエリを参照してリストを生成しているということです。例えば、詳細ページ用のリストはページが is_single() のときに生成され、アーカイブページ用のリストはページが is_archive() のときに生成されます。ループの中だとしてもページのクエリは is_arhive()true になるので、アーカイブページ用のリストが出力されてしまう、ということになります。

    2つ目は、Snow Monkey のパンくずは一度生成したリストをキャッシュするようになっているので、↑の対策をしたとしてもキャッシュされたパンくずを出力してしまうために同じリストが繰り返し表示されてしまうということです。

    上記2つに対して対策してみたコードが下記になります。

    /**
     * ループのメタ情報部分にパンくずを追加する。
     */
    add_filter(
    	'snow_monkey_template_part_render_template-parts/loop/entry-summary/meta/meta',
    	function( $html ) {
    		query_posts( array( 'p' => get_the_ID() ) ); // これが重要。クエリを記事用に再生成する。
    		ob_start();
    		\Framework\Helper::get_template_part( 'template-parts/common/breadcrumbs' );
    		$breadcrumbs = ob_get_clean();
    		wp_reset_query(); // クエリをもとに戻す
    		return $html . $breadcrumbs;
    	}
    );
    
    /**
     * パンくずを都度生成するようにする。
     */
    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/common/breadcrumbs',
    	function( $args ) {
    		$breadcrumbs       = new \Inc2734\WP_Breadcrumbs\Bootstrap();
    		$breadcrumbs_items = $breadcrumbs->get();
    		// $breadcrumbs_items = apply_filters( 'snow_monkey_breadcrumbs', $breadcrumbs_items ); // 必要ならコメントアウト
    
    		$args['vars']['_items'] = $breadcrumbs_items;
    		return $args;
    	}
    );

    なんとなくあんまりきれいな処理ではない気がするので、気になるようなら自作したほうが良いかもしれません…。

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

    ちょっとコード自体を書き換えてみました。これに差し替えるとどうですかね?

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/common/entries/entries',
    	function( $args ) {
    		// 最近の投稿ブロックのとき
    		if ( 'snow-monkey-blocks/recent-posts' === $args['vars']['_context'] ) {
    			// 並び順を変更
    			$args['vars']['_posts_query'] = new \WP_Query(
    				array_merge(
    					$args['vars']['_posts_query']->query,
    					array(
    						'orderby' => 'modified',
    						'order'   => 'DESC'
    					)
    				)
    			);
    		}
    		return $args;
    	}
    );
    0
    いいねをした人: 居ません
    アバター画像otomeweb
    参加者
    22

    複数サイトに実装しているので、検証がおぼつかないのですが
    プラグインを2回アップデートしたら表示される形になったように思います

    更新されてる感じなんです
    でも先頭固定よりうえ?

    人権(生まれながら持つ権利)
    身体(自分と相手を大切に)

    が先頭固定 ただし除外してる

    これおかしいのですよね「性差別」が先頭固定になるべきなので
    なにか並び順がおかしい コードはこれをつかってます

    /** 
     * 最新用語を更新日でソートする
     */
    
    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/common/entries/entries',
    	function( $args ) {
    		// 最近の投稿ブロックのとき
    		if ( 'snow-monkey-blocks/recent-posts' === $args['vars']['_context'] ) {
    				// 並び順を変更
    				$args['vars']['_posts_query']->set( 'orderby', 'modified' );
    				$args['vars']['_posts_query']->set( 'order', 'DESC' );
    				// セットしたクエリーをもとに WP_Query をリセット
    				$args['vars']['_posts_query']->query( $args['vars']['_posts_query']->query_vars );
    		}
    		return $args;
    	}
    );

    仕様として
    – 先頭固定が最初にならぶ
    – 先頭固定も更新順になる
    – その他の記事が更新順になる
    – 新規記事は公開日=更新日という扱いになる

    という仕様で意識あってますでしょうか

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

    ↑のコードを応用するとどうですかね?

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/common/entries/entries',
    	function( $args ) {
    		// 最近の投稿ブロックのとき
    		if ( 'snow-monkey-blocks/recent-posts' === $args['vars']['_context'] ) {
    				// 並び順を変更
    				$args['vars']['_posts_query']->set( 'orderby', 'modified' );
    				$args['vars']['_posts_query']->set( 'order', 'DESC' );
    				// セットしたクエリーをもとに WP_Query をリセット
    				$args['vars']['_posts_query']->query( $args['vars']['_posts_query']->query_vars );
    		}
    		return $args;
    	}
    );
    0
    いいねをした人: 居ません
    #141416

    返信が含まれるトピック: 投稿一覧に投稿日時が表示されない。

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

    template-parts/archive/entry/entry テンプレートパーツでは日付表示の有無がコントロールできないので(できるようにしたほうが良いかもですが)、まず、下記のように変更してみてください。

    \Framework\Helper::get_template_part(
    	'template-parts/archive/entry/entry',
    	'all-entries', // ここを変える
    	$args
    );

    \Framework\Helper::get_template_part(
    	'template-parts/archive/entry/entry',
    	'marketing-entries-archive', // ユニークなものならなんでも良いですが、ここでは marketing-entries-archive としておきます
    	$args
    );

    次に、メタ情報のテンプレートパーツの引数をカスタマイズします。

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/loop/entry-summary/meta/meta',
    	function( $args ) {
    		// 先で指定した name 付き(marketing-entries-archive)でテンプレートパーツが呼ばれたときだけ実行
    		if ( 'marketing-entries-archive' === $args['name'] ) {
    			$args['vars']['_display_published'] = true; // 日付を表示
    		}
    		return $args;
    	}
    );

    試してみてください!

    1
    いいねをした人:
    #141224
    澤村裕紀
    参加者
    0

    GONSY様
    すでにトピック上がっていたのですね。
    教えていただきありがとうございます!

     

    こちらのトピックを参考に以下のコード、カスタマイズ→デザイン編集を設定しましたがうまく表示されませんでした。

    コードや設定にどこか問題点はございますでしょうか?

    add_filter(
    'snow_monkey_get_template_part_args',
    function( $args ) {
    // 記事一覧カテゴリー以外のテンプレートの場合は無視
    if ( 'template-parts/loop/entry-summary/term/term' !== $args['slug'] ) {
    return $args;
    }
    
    if ( 'post' !== $args['name'] ) {
    return $args;
    }
    
    if ( 'examples' === get_post_type() ) {
    $args['vars']['_terms'] = get_the_terms( get_the_ID(), 'examples_category' );
    }
    return $args;
    }
    );

    【アーカイブページ】

    【タクソノミーページ】

    【投稿ページ】

     

    よろしくお願いいたします。

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

    下記のように1行追加するとどうですかね?

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/widget/snow-monkey-posts',
    	function( $args ) {
    		// 最近の投稿ブロックのとき
    		if ( 'snow-monkey-blocks/recent-posts' === $args['vars']['_context'] ) {
    			// レイアウトが「リッチメディア」のとき
    			if ( 'rich-media' === $args['vars']['_entries_layout'] ) {
    				// 表示件数を変更
    				$args['vars']['_posts_query']->posts_per_page = 30;
    				// クエリーを再設定
    				$args['vars']['_posts_query']->query( $args['vars']['_posts_query']->query_vars ); // この行を追加
    			}
    		}
    		return $args;
    	}
    );

    12件を超えての表示数の設定は要望として結構多いので、もう12件以上設定できるように変更を入れいたいと思います!

    0
    いいねをした人: 居ません
    #139905
    アバター画像otomeweb
    参加者
    22

    カスタムフィールドつくる方法で作業をはじめました
    ふりがなには初期値で「あ」がはいってます
    一部にフリガナを振りました

    しかしページめくりが変わりません
    投稿一覧と、投稿でのページめくりが混乱しています
    どちらもカスタムフィールドでならべたいです

    コードおかしいところみてもらえますか

    
    /**
    投稿一覧の制御
     */
    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/common/entries/entries',
    	function( $args ) {
    		// 一覧または関連用語のとき
    		if ( 'archive' === $args['vars']['_context'] || 'snow-monkey/related-posts' === $args['vars']['_context'] ) {
    				// 抜粋の表示を有効化
    				$args['vars']['_display_item_excerpt'] = true;
    				// 抜粋の文字数を変更
    				$args['vars']['_excerpt_length'] = 40; // 任意の数値を設定してください
    				// 並び順を変更
    				$args['vars']['_posts_query']->set( 'orderby', 'title' );
    				//$args['vars']['_posts_query']->set( 'meta_key', 'furigana' );
    				//$args['vars']['_posts_query']->set( 'orderby', 'meta_value' );
    				$args['vars']['_posts_query']->set( 'order', 'ASC' );
    				// セットしたクエリーをもとに WP_Query をリセット
    				$args['vars']['_posts_query']->query( $args['vars']['_posts_query']->query_vars );
    		}
    		return $args;
    	}
    );
    
    /**
    投稿の並び順
     */
    function my_orderby_meta_key( $query ) {
      if ( ! is_admin() ) {
        if( $query->is_main_query() ) {
          if( $query->is_post_type('post') ) {
            $query->set( 'meta_key', 'furigana' ); // ふりがなのカスタムフィールド名
            $query->set( 'orderby', 'meta_value' );
            $query->set( 'order', 'ASC' );
            $query->set( 'post_type', array( 'post' ) );
          }
        }
      }
    }
    add_action( 'pre_get_posts', 'my_orderby_meta_key' );
    
    0
    いいねをした人: 居ません
    アバター画像キタジマ タカシ
    参加者
    2421

    まず、アイキャッチ画像があるときはページヘッダーに表示されるように設定します。

    適当な投稿を開いた状態でカスタマイザーを開き、デザイン → 投稿ページ設定 → アイキャッチ画像の位置で「ページヘッダー」を選択して保存してください。

    次に、下記のコードを My Snow Monkey プラグイン、または子テーマの functions.php に貼り付けてください。

    /**
     * 画像がないときでもページヘッダーに画像を表示する
     */
    add_filter(
    	'snow_monkey_is_output_page_header',
    	function( $is_output ) {
    		// 投稿のとき
    		if ( is_singular( 'post' ) ) {
    			return true;
    		}
    		return $is_output;
    	}
    );
    
    /**
     * ページヘッダーにその投稿が属するカテゴリー名を表示する
     * また、ページヘッダーのメタ情報は非表示にする
     */
    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/common/page-header',
    	function( $args ) {
    		// 投稿のとき
    		if ( is_singular( 'post' ) ) {
    			// その投稿が属するカテゴリーの情報を取得
    			$the_categories = get_the_category();
    			$categories     = array();
    			foreach ( $the_categories as $category ) {
    				$categories[] = $category->name;
    			}
    
    			// カテゴリー名を表示(複数ある場合に備えてカンマ区切りで表示する)
    			$args['vars']['_title']              = implode( ',', $categories );
    			// メタ情報を非表示
    			$args['vars']['_display_entry_meta'] = false;
    		}
    		return $args;
    	}
    );
    1
    いいねをした人:
    #139336

    返信が含まれるトピック: メガメニューをクリックで開きたい

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

    Snow Monkey のグローバルナビゲーションにはポップアップモードというオプションがあって、サブメニューの展開方法をフックでカスタマイズすることができます。

    下記のコードはサブメニューの展開方法をクリックに変更します。My Snow Monkey プラグインか子テーマの functions.php に貼り付けてみてください。

    add_filter(
    	'snow_monkey_get_template_part_args_template-parts/nav/global',
    	function( $args ) {
    		$args['vars']['_popup-mode'] = 'click';
    
    		return $args;
    	}
    );

    ただ、メガメニューには完全対応していないので、ちょっと CSS で調整が必要になるかもしれません><

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

    下記のコードを My Snow Monkey プラグインに追加してみてください。

    /**
     * 記事下部のデフォルトのタグ表示を消す
     */
    add_filter(
    	'snow_monkey_get_template_part_args_templates/view/content',
    	function( $args ) {
    		$args['vars']['_display_tags'] = false;
    		return $args;
    	}
    );
    0
    いいねをした人: 居ません
15件の結果を表示中 - 1 - 15件目 (全109件中)

ドキュメント

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

ドキュメント

フォーラム

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

サポートフォーラム

よくあるご質問

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

よくあるご質問

お問い合わせ

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

お問い合わせ

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