メインコンテンツへ移動

Search results of "i"

15件の結果を表示中 - 5,911 - 5,925件目 (全9,021件中)
  • 投稿者
    検索結果
  • Kmical Lights
    閲覧者
    235

    @キタジマさん
    “オーダー情報自体” はWCの仕様もあるので取れないっすね。(請求情報とか保護されてるので)
    ただ、ユーザーIDやらカスタマーIDなりで、オーダーIDを掴んでそれと一緒に…叩いて
    何なりの手順でIDを掴んで順よくやる事で、このサイトであれば、いつどんなユーザーが何を買ったか〜程度のオーダー系に近いステータス的な情報を取れはします。
    (WCの仕様なのか、ブロックと連動させるためなのか、プラグインと連動しやすくする為なのか、その辺は割と緩めっぽいです)

    重要な情報は取得できないので安心と言えば安心ですが、不安ならwp-json閉めた方が良いかもです。

    0
    Who liked: No user
    アバター画像キタジマ タカシ
    参加者
    2602

    @Olein_jp
    このページからはわからないですねー。GitHub なんかだと、有料会員は「PRO」の表記がでるので、同じような感じで名前のところとかに表記が出るようにしても良いかもですね。

    @Kmical Lights さん
    オーダー情報は認証情報が無いととれないのではないです?

    1
    Who liked: No user
    Kmical Lights
    閲覧者
    235

    書いていいか解らんのでヒントだけ書いときますね。

    https://snow-monkey.2inc.org/wp-json/wp/v2/users?slug=olein

    こちらのWP-JSONでユーザーネームに対して、該当ユーザーのデータを取得できます。
    (例は olein 氏の場合)

    それでユーザーIDなどが解るはずなので、後はWooCommerceのAPIをユーザーIDでバチバチ叩けば…
    商品IDはプロダクト系のAPIから叩いてください。(基本変わらないので1回叩いて確認するだけで良いです)

    WCのAPIは https://snow-monkey.2inc.org/wp-json/wc/v3 ですね。

    これのパラメーターを使い、WooCommerceのAPIを上手く叩けばサブスクの判定を外部からでも取れます。
    (とは言え…WooCommerce API…のオーダー関係の取得していいのか…なぁと。ここはあんまり書かない方が良いかなーと言うことで…詳細は割愛しときます^^;)

    追記:
    判定の方法は書いても大丈夫かなと。
    プロダクトIDとオーダーした日時とステータスがcompletedなものからサブスク中か判定する感じです。(meta dataから取れるかもしれないけど…)
    Snow Monkeyの場合であれば、1年の期間販売なので、オーダー日時+1年で割り出せるはずです。

    1
    Who liked: No user
    Olein_jp
    参加者
    576

    @キタジマさん

    おおおー!!そうなんですね!!であれば分岐すら必要ない…!!すごい!!素敵!!!

    @snow_coding さん

    ご希望通りできたとのことで良かったですー!僕も一つ勉強することができました!ありがとうございます!!

    1
    Who liked: No user
    snow_coding
    閲覧者
    4

    Olein_jpさん、キタジマさん、ありがとうございました!

     

    希望通りに表示できました!

    1人では絶対にたどり着けなかったので、本当に助かりました。

    ありがとうございました。

    1
    Who liked: No user
    #62016
    アバター画像キタジマ タカシ
    参加者
    2602

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

    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
    Who liked: No user
    アバター画像キタジマ タカシ
    参加者
    2602
    #62008
    アバター画像キタジマ タカシ
    参加者
    2602

    @ケミさん これは既存のページネーションを部分書き換えするより、

    を使ってまるっと HTML を書いたほうが良い気がする…。

    ちょっと明日書いてみます。

    2
    Who liked: No user
    #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
    Who liked: No user
    Olein_jp
    参加者
    576

    確かに、階層が間違っており、archive.phpと同階層にarchive-menu.php を作成したところ、アーカイブページがarchive-menu.phpで表示されました。内容は以下の通りです。

    カスタム投稿タイプのスラッグはmenuということですかね?それでarchive-menu.phpを作られたという流れとお察ししました。

    実際にこちらでテストをしたわけではないのですが、カスタム投稿タイプmenuの一覧ページにて、冒頭添付画像のようにタイトル(画像では「商品1」)とあり、その付近(タイトルの下とか?)にカスタムフィールド値を出力されたいのであれば、archive.phpではなくtemplate-parts/loop/entry-summary/content/content.php辺りを用意して、カスタム投稿タイプのアーカイブ表示時という条件分岐を入れて、カスタムフィールド出力部分を作成するというような形で実現できないでしょうか?

    ちなみにですが、カスタム投稿タイプのアーカイブかどうかの条件分岐にはis_post_type_archive()が利用できるかと思います。

    参考になれば幸いです。

    追伸

    初心者で申し訳ございません。

    全く悪いことではありませんよ!僕もまだまだ初心者です。

    2
    Who liked: No user
    snow_coding
    閲覧者
    4

    ご返信どうもありがとうございます。

    確かに、階層が間違っており、archive.phpと同階層にarchive-menu.php を作成したところ、アーカイブページがarchive-menu.phpで表示されました。内容は以下の通りです。

    <?php
    /**
     * @package snow-monkey
     * @author inc2734
     * @license GPL-2.0+
     * @version 5.0.0
     */
    
    use Framework\Controller\Controller;
    
    Controller::layout( get_theme_mod( 'archive-page-layout' ) );
    if ( have_posts() ) {
    	Controller::render( 'archive', get_post_type() );
    } else {
    	Controller::render( 'none' );
    }

    こちらのページを編集して、カスタムフィールドの値を出力したいのですが、方法を教えていただけますでしょうか。

    初心者で申し訳ございません。

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

    0
    Who liked: No user
    #61979
    castone
    閲覧者
    1

    Olein_jp様

    ありがとうございます。

    Snow Monkey Blocksでの表現は少し難しい内容でしたか、、

    色々と教えて頂きありがとうございました。

    0
    Who liked: No user
    #61977
    castone
    閲覧者
    1

    Olein_jp様

    ご連絡ありがとうございます。

    こちらピックアップスライダーの実現は難しそうとのことですが、スライダーでの実現も同様に難しそうでしょうか?(タグでスライダー表示の機能は無視で構いません)

    もし良い方法があればご教授いただければ嬉しいです。

    0
    Who liked: No user
    Olein_jp
    参加者
    576

    template-parts>archive>entry>archive.phpをコピーして、
    archive-menu.phpというファイルを作成しましたが、その先どうしたらよいかわからず質問しました。

    恐らく上記の場所にはarchive.phpは存在しないと思います。template-parts/archive/entry/content.phpなどでしょうか?

    また、テンプレートをコピーしてMy Snow Monkeyや子テーマで上書きする場合には、親テーマに存在するファイル名と同じファイル名でないと上書きされません。

    ですので、例えば上記のようにtemplate-parts/archive/entry/content.phpのテンプレートを上書きしたいのであれば、同じ階層で同じファイル名のテンプレートファイルを用意する必要があります。

    また、

    custom post type UI でアーカイブページを表示させると、以下のように表示されます。今1つしか入れていませんが、商品を追加していくと、タイトルの下にカスタムフィールドの値も表示されるようにするにはどうしたらいいでしょうか。

    Custom Post Type UIはカスタム投稿タイプを用意するプラグインですが、表示をさせたいアーカイブ情報が表示されるページに正常にアクセスできていますでしょうか?

    Show Current Templatesなどを活用して、まずは意図したアーカイブページが表示されているか、そこに読み込まれているテンプレートなどから確認してみてください。

    以上、ご確認ください。

    0
    Who liked: No user
    #61937

    返信が含まれるトピック: 検索絞り込み機能の実装方法

    sou
    閲覧者
    2

    試してみましたが、VK Filter Searchで実装できそうです!

    回答ありがとうございました!

    1
    Who liked: No user
15件の結果を表示中 - 5,911 - 5,925件目 (全9,021件中)

ドキュメント

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

ドキュメント

フォーラム

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

サポートフォーラム

よくあるご質問

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

よくあるご質問

お問い合わせ

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

お問い合わせ

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